按照網上的教程進行控件換膚,出現類似波紋和撕裂的現象,特別是像Slider這種刷新頻繁的控件很明顯。如果不設置皮膚就沒這現象。要怎么解決
用framewin部分的皮膚來說明:
- /**************************** 扁平化對話框設置 ************************/
- FRAMEWIN_SetClientColor( hItem,0X00FFFFFF);//設置窗體內部的顏色
-
- FRAMEWIN_GetSkinFlexProps(&FRAMEWIN_Props,FRAMEWIN_SKINFLEX_PI_ACTIVE);//獲取當前對話框的屬性
-
- FRAMEWIN_Props.aColorFrame[0] = 0X00F2EBB2;//100以下均為設置顏色
- FRAMEWIN_Props.aColorFrame[1] = 0X00EADE80;//200
- FRAMEWIN_Props.aColorFrame[2] = 0X00FFFFFF;//400
-
- FRAMEWIN_Props.aColorTitle[0] = 0X00DAC626;//400
- FRAMEWIN_Props.aColorTitle[1] = 0X00DAC626;
-
- FRAMEWIN_Props.BorderSizeT = 0;//標題欄與邊框頂部的間距
- FRAMEWIN_Props.BorderSizeL = FRAMEWIN_Props.BorderSizeR = 5;//窗體內部的兩側與邊框的間距
-
- FRAMEWIN_Props.Radius = 2;//圓角的半徑
-
- FRAMEWIN_SetSkinFlexProps(&FRAMEWIN_Props,FRAMEWIN_SKINFLEX_PI_ACTIVE);//設置激活狀態下的皮膚
-
- FRAMEWIN_GetSkinFlexProps(&FRAMEWIN_Props,FRAMEWIN_SKINFLEX_PI_INACTIVE);
-
- FRAMEWIN_Props.aColorFrame[0] = 0X00FFFFFF;//以下均為設置顏色
- FRAMEWIN_Props.aColorFrame[1] = 0X00F2EBB2;//100
- FRAMEWIN_Props.aColorFrame[2] = 0X00FFFFFF;
-
- FRAMEWIN_Props.aColorTitle[0] = 0X00F2EBB2;//100
- FRAMEWIN_Props.aColorTitle[1] = 0X00F2EBB2;
-
- FRAMEWIN_Props.BorderSizeT = 0;//標題欄與邊框頂部的間距
- FRAMEWIN_Props.BorderSizeL = FRAMEWIN_Props.BorderSizeR = 5;//窗體內部的兩側與邊框的間距
-
- FRAMEWIN_Props.Radius = 2;//圓角的半徑
- FRAMEWIN_SetSkinFlexProps(&FRAMEWIN_Props,FRAMEWIN_SKINFLEX_PI_INACTIVE);//設置未激活狀態下的皮膚
- /**********************************************************************************/
復制代碼
|