极品馒头泬19p,国产精品亚洲一区二区三区,狠狠色噜噜狠狠狠7777奇米,国产精品视频一区二区三区无码,国产欧美日韩久久久久

【E961】emWin以skinning方式實(shí)現(xiàn)BMP圖片位圖皮膚的源代碼

2021-09-09 20:31:21      索煒達(dá)電子      1177     

項(xiàng)目編號(hào):E961

文件大?。?M

源碼說明:帶中文注釋

開發(fā)環(huán)境:C編譯器

簡(jiǎn)要概述:

emWin以skinning方式實(shí)現(xiàn)BMP圖片位圖皮膚的源代碼

emWin的控件顯示是由默認(rèn)的控件繪制函數(shù)完成,但emWin憑借其skinning功能可以非常方便的實(shí)現(xiàn)自定義控件繪制函數(shù),利用自定義控件繪制函數(shù)我們可以非常方便的實(shí)現(xiàn)所有控件的BMP位圖皮膚,而且支持整幅圖片貼圖,不需要對(duì)整幅圖片進(jìn)行切片分解,功能非常強(qiáng)大。

【E961】emWin以skinning方式實(shí)現(xiàn)BMP圖片位圖皮膚的源代碼

如上圖所示,(x0,y0)為整幅圖片的顯示坐標(biāo),(x1,y1)和(x2,y2)是emWin為控件自動(dòng)生成的剪切顯示坐標(biāo),我們只需要調(diào)用GUI_DrawBitmap()函數(shù)在(x0,y0)顯示整幅圖片即可,emWin會(huì)自動(dòng)剪切顯示出該控件的位圖皮膚,非常便捷。

以整幅圖片實(shí)現(xiàn)emWin位圖皮膚可以大大減輕控件貼圖的工作量,非常的方便;如果把每個(gè)控件對(duì)應(yīng)的圖片先切片分解下來,然后再轉(zhuǎn)換成C文件,最后再貼圖到控件上面去,那樣工作量將是非常恐怖的;保守估計(jì)貼圖工作效率提高10倍以上。

【E961】emWin以skinning方式實(shí)現(xiàn)BMP圖片位圖皮膚的源代碼

【E961】emWin以skinning方式實(shí)現(xiàn)BMP圖片位圖皮膚的源代碼

附件里面的SKIN_xxxx.c是emWin的自定義控件繪制函數(shù),也就是繪制出什么樣的控件完全是靠這個(gè)函數(shù),可以根據(jù)自己的需要修改代碼:

目錄│文件列表:

 └ demo_emwin_skinPRJ_V530noOS_CodeBlocks_v116

    └ demo_emwin_skinPRJ_V530noOS_CodeBlocks_v116

       │ CleanUp.bat

       │ ReadMe.html

       │ readme.txt

       │ SimError.log

       │ SimulationTrial.cbp

       │ SimulationTrial.cscope_file_list

       │ SimulationTrial.depend

       │ SimulationTrial.layout

       ├ Application

       │  │ bitmap.h

       │  │ MainTask.c

       │  │ WindowDLG.rar

       │  │ WINpage1.c

       │  │ WINpage1_top.c

       │  │ WINpage2.c

       │  │ WINpage2_top.c

       │  │ wintop.c

       │  │ wintop.h

       │  ├ pics

       │  │  │ Page1_M.bmp

       │  │  │ Page1_M.c

       │  │  │ Page1_N.bmp

       │  │  │ Page1_N.c

       │  │  │ Page1_P.bmp

       │  │  │ Page1_P.c

       │  │  │ Page1_TN.bmp

       │  │  │ Page1_TN.c

       │  │  │ Page2_M.bmp

       │  │  │ Page2_M.c

       │  │  │ Page2_N.bmp

       │  │  │ Page2_N.c

       │  │  │ Page2_P.bmp

       │  │  │ Page2_P.c

       │  │  ├ mov0

       │  │  │  │ 00.bmp

       │  │  │  │ 00.c

       │  │  │  │ 01.bmp

       │  │  │  │ 01.c

       │  │  │  │ 02.bmp

       │  │  │  │ 02.c

       │  │  │  │ 03.bmp

       │  │  │  │ 03.c

       │  │  │  │ 04.bmp

       │  │  │  │ 04.c

       │  │  │  │ 05.bmp

       │  │  │  │ 05.c

       │  │  │  │ 06.bmp

       │  │  │  │ 06.c

       │  │  │  │ 07.bmp

       │  │  │  │ 07.c

       │  │  │  │ 08.bmp

       │  │  │  │ 08.c

       │  │  │  │ 09.bmp

       │  │  │  │ 09.c

       │  │  │  │ 10.bmp

       │  │  │  │ 10.c

       │  │  │  │ 11.bmp

       │  │  │  │ 11.c

       │  │  │  │ 12.bmp

       │  │  │  │ 12.c

       │  │  │  │ 13.bmp

       │  │  │  │ 13.c

       │  │  │  │ 14.bmp

       │  │  │  │ 14.c

       │  │  │  │ 15.bmp

       │  │  │  │ 15.c

       │  │  │  │ 16.bmp

       │  │  │  │ 16.c

       │  │  │  │ 17.bmp

       │  │  │  │ 17.c

       │  │  │  │ 18.bmp

       │  │  │  │ 18.c

       │  │  │  │ 19.bmp

       │  │  │  │ 19.c

       │  │  │  │ 20.bmp

       │  │  │  │ 20.c

       │  │  │  │ 21.bmp

       │  │  │  │ 21.c

       │  │  │  │ 22.bmp

       │  │  │  │ 22.c

       │  │  │  │ 23.bmp

       │  │  │  └ 23.c

       │  │  └ psd

       │  │     │ WINpage1.psd

       │  │     └ WINpage2.psd

       │  └ skinning

       │     │ skinning.h

       │     │ SKIN_button.c

       │     │ SKIN_checkbox.c

       │     │ SKIN_dropdown.c

       │     │ SKIN_multipage.c

       │     │ SKIN_progbar.c

       │     │ SKIN_radio.c

       │     │ SKIN_scrollbar.c

       │     │ SKIN_slider.c

       │     └ SKIN_spinbox.c

       ├ Config

       │  │ GUIConf.c

       │  │ GUIConf.h

       │  │ LCDConf.c

       │  │ LCDConf.h

       │  └ SIMConf.c

       ├ Exe

       │  └ GUISimulationDebug.exe

       ├ GUI

       │  ├ Include

       │  │  │ BUTTON.h

       │  │  │ BUTTON_Private.h

       │  │  │ CALENDAR.h

       │  │  │ CHECKBOX.h

       │  │  │ CHECKBOX_Private.h

       │  │  │ CHOOSECOLOR.h

       │  │  │ CHOOSEFILE.h

       │  │  │ DIALOG.h

       │  │  │ DIALOG_Intern.h

       │  │  │ DROPDOWN.h

       │  │  │ DROPDOWN_Private.h

       │  │  │ EDIT.h

       │  │  │ EDIT_Private.h

       │  │  │ FRAMEWIN.h

       │  │  │ FRAMEWIN_Private.h

       │  │  │ Global.h

       │  │  │ GRAPH.h

       │  │  │ GRAPH_Private.h

       │  │  │ GUI.h

       │  │  │ GUI_ARRAY.h

       │  │  │ GUI_ARRAY_Private.h

       │  │  │ GUI_BMP_Private.h

       │  │  │ GUI_ConfDefaults.h

       │  │  │ GUI_Debug.h

       │  │  │ GUI_FontIntern.h

       │  │  │ GUI_GIF_Private.h

       │  │  │ GUI_HOOK.h

       │  │  │ GUI_JPEG_Private.h

       │  │  │ GUI_Private.h

       │  │  │ GUI_SetOrientation.h

       │  │  │ GUI_SetOrientationCX.h

       │  │  │ GUI_SIM_Win32.h

       │  │  │ GUI_SPRITE_Private.h

       │  │  │ GUI_Type.h

       │  │  │ GUI_Version.h

       │  │  │ GUI_VNC.h

       │  │  │ HEADER.h

       │  │  │ HEADER_Private.h

       │  │  │ ICONVIEW.h

       │  │  │ ICONVIEW_Private.h

       │  │  │ IMAGE.h

       │  │  │ IMAGE_Private.h

       │  │  │ KNOB.h

       │  │  │ KNOB_Private.h

       │  │  │ LCD.h

       │  │  │ LCDSIM_Private.h

       │  │  │ LCD_ConfDefaults.h

       │  │  │ LCD_Private.h

       │  │  │ LCD_Protected.h

       │  │  │ LCD_SIM.h

       │  │  │ LISTBOX.h

       │  │  │ LISTBOX_Private.h

       │  │  │ LISTVIEW.h

       │  │  │ LISTVIEW_Private.h

       │  │  │ LISTWHEEL.h

       │  │  │ LISTWHEEL_Private.h

       │  │  │ MENU.h

       │  │  │ MENU_Private.h

       │  │  │ MESSAGEBOX.h

       │  │  │ MULTIEDIT.h

       │  │  │ MULTIPAGE.h

       │  │  │ MULTIPAGE_Private.h

       │  │  │ PROGBAR.h

       │  │  │ PROGBAR_Private.h

       │  │  │ RADIO.h

       │  │  │ RADIO_Private.h

       │  │  │ SCROLLBAR.h

       │  │  │ SCROLLBAR_Private.h

       │  │  │ SIM.h

       │  │  │ SIM_GetRegions.h

       │  │  │ SLIDER.h

       │  │  │ SLIDER_Private.h

       │  │  │ SPINBOX.h

       │  │  │ SPINBOX_Private.h

       │  │  │ TEXT.h

       │  │  │ TEXT_Private.h

       │  │  │ TREEVIEW.h

       │  │  │ TREEVIEW_Private.h

       │  │  │ WIDGET.h

       │  │  │ WINDOW_Private.h

       │  │  │ WM.h

       │  │  │ WM_GUI.h

       │  │  └ WM_Intern.h

       │  └ Library

       │     │ GUI.a

       │     └ GUI.lib

       ├ oD

       │  ├ Application

       │  │  │ MainTask.o

       │  │  │ WINpage1.o

       │  │  │ WINpage1_top.o

       │  │  │ WINpage2.o

       │  │  │ WINpage2_top.o

       │  │  │ wintop.o

       │  │  ├ pics

       │  │  │  │ Page1_M.o

       │  │  │  │ Page1_N.o

       │  │  │  │ Page1_P.o

       │  │  │  │ Page1_TN.o

       │  │  │  │ Page2_M.o

       │  │  │  │ Page2_N.o

       │  │  │  │ Page2_P.o

       │  │  │  └ mov0

       │  │  │     │ 00.o

       │  │  │     │ 01.o

       │  │  │     │ 02.o

       │  │  │     │ 03.o

       │  │  │     │ 04.o

       │  │  │     │ 05.o

       │  │  │     │ 06.o

       │  │  │     │ 07.o

       │  │  │     │ 08.o

       │  │  │     │ 09.o

       │  │  │     │ 10.o

       │  │  │     │ 11.o

       │  │  │     │ 12.o

       │  │  │     │ 13.o

       │  │  │     │ 14.o

       │  │  │     │ 15.o

       │  │  │     │ 16.o

       │  │  │     │ 17.o

       │  │  │     │ 18.o

       │  │  │     │ 19.o

       │  │  │     │ 20.o

       │  │  │     │ 21.o

       │  │  │     │ 22.o

       │  │  │     └ 23.o

       │  │  └ skinning

       │  │     │ SKIN_button.o

       │  │     │ SKIN_checkbox.o

       │  │     │ SKIN_dropdown.o

       │  │     │ SKIN_multipage.o

       │  │     │ SKIN_progbar.o

       │  │     │ SKIN_radio.o

       │  │     │ SKIN_scrollbar.o

       │  │     │ SKIN_slider.o

       │  │     └ SKIN_spinbox.o

       │  ├ Config

       │  │  │ GUIConf.o

       │  │  │ LCDConf.o

       │  │  └ SIMConf.o

       │  └ Simulation

       │     └ WinMain.o

       └ Simulation

          │ GUISim.a

          │ GUISim.lib

          │ Simulation.res

          │ SimulationMinGW.res

          └ WinMain.c

TAGemWin
  • 13 次
  • 1 分