emwin添加图标和图片
1、準備要添加的圖標和圖片(截成你需要的大小)
2、使用emwin提供的工具BmpCvt.exe裝換出.c文件(open->save即可)
3、使用工具GUIBuilder.exe創(chuàng)建一個包含控件Image和Iconview的頁面
注意:我用的是GUIBUilder V5.36 而V5.12不包含這兩個控件
3、將生成的頁面及圖片.c添加到工程里
因為我是自己用圖片轉(zhuǎn)的.c文件所以沒用到Imge提供的數(shù)組_acImage_0及函數(shù)_GetImageById還有相關的初始化
? ? hItem = WM_GetDialogItem(pMsg->hWin, ID_IMAGE_0);
? ? pData = _GetImageById(ID_IMAGE_0_IMAGE_0, &FileSize);
? ? IMAGE_SetBMP(hItem, pData, FileSize);,刪掉就行了
4、畫頁面的函數(shù)要注意圖標的創(chuàng)建部分,我的圖標是25*30的所以第九個參數(shù)是25*30(已用紅色標出)
因為我要留邊所以設置控件大小為35*40
static const GUI_WIDGET_CREATE_INFO _aDialogCreate[] = {
? { FRAMEWIN_CreateIndirect, "Framewin", ID_FRAMEWIN_0, 0, 0, 800, 480, 0, 0x0, 0 },
?? ?{ ICONVIEW_CreateIndirect, "Iconview", ID_ICONVIEW_LOGO, 652, 0, 35, 40, 0, 0x0019001E, 0 },
};
5、在頁面的.c里引入圖面的地址指針
extern GUI_CONST_STORAGE GUI_BITMAP bmLogo;
extern GUI_CONST_STORAGE GUI_BITMAP bmmainpage;
6、在創(chuàng)建頁面的回調(diào)函數(shù)里添加控件
static void _cbDialog(WM_MESSAGE * pMsg) {
? const void * pData;
? WM_HWIN ? ? ?hItem;
? U32 ? ? ? ? ?FileSize;
? int ? ? ? ? ?NCode;
? int ? ? ? ? ?Id;
? switch (pMsg->MsgId) {
? case WM_INIT_DIALOG://初始化頁面
?? ??? ?
? hItem = WM_GetDialogItem(pMsg->hWin, ID_IMAGE_0);
?? ?IMAGE_SetBitmap(hItem,&bmmainpage);//添加圖片
?? ?
?? ?hItem = WM_GetDialogItem(pMsg->hWin, ID_ICONVIEW_LOGO);
?? ?ICONVIEW_AddBitmapItem(hItem,&bmLogo,"");//添加圖標
}
?7、然后調(diào)用你創(chuàng)建好的界面就可以了?? ?CreateFramewin();
?
?
總結(jié)
以上是生活随笔為你收集整理的emwin添加图标和图片的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python绘图设置正交坐标等距_pyt
- 下一篇: matlab 7y30,屏幕及音响表现出