emWin使用注意事項-筆記


1.在圖片上顯示文本時,特別是使用內存設備顯示動態文本時,文本顯示(如 GUI_DispString("Op Fancy's Blog"); )背景默認是桌面背景。

  (小記:桌面背景默認時黑色,可以通過調用如 GUI_SetBkColor(GUI_WHITE); 將桌面背景色設置為白色。)

如果需要將文本背景設為透明或是反轉文本顏色(文本本身顏色和文本背景顏色同時反轉),可通過調用 int GUI_SetTextMode(int TextMode); 函數進行設置

  函數參數分別可以為:

GUI_TEXTMODE_NORMAL

設置為顯示正常文本。這是默認設置,該數值等同於0。

GUI_TEXTMODE_XOR 

設置為顯示反轉文本。

GUI_TEXTMODE_TRANS 

設置為顯示透明文本。

GUI_TEXTMODE_REV

設置為反相顯示的文本。

 2.使用內存設備進行動態顯示的過程主要包括:

  (1).創建顯示區域前景和背景的內存設備。

  (2).在進行顯示前將背景區域拷貝到內存設備中

  (3).循環中選中前景內存設備作為接下來的操作對象

  (4).將之前拷貝的背景區域寫入到前景設備

  (5).在設定的區域進行顯示操作  注意:進行到這一步屏幕上是不會有實際顯示畫面的,因為顯示操作實在選中的內存設備hMem_Fk上進行操作的,而不是對屏幕進行操作

  (6).把內存設備前景區域拷貝到屏幕進行顯示  注意:這一步屏幕上才會有實際的顯示畫面

  (7).之后如果需要進行其他直接對屏幕顯示的操作時,一定要在操作最后執行GUI_MEMDEV_Select(0);這一步的意思是將顯示對象設置為LCD屏幕,而不是選中的內存設備HMem_FK

  (8).如果創建的是一次性使用的內存設備(如在調用的函數里面創建)時,需要在使用完成后刪除內存設備,否則會造成內存泄漏,造成長時間使用時閃爍的情況!

 

GUI_MEMDEV_Handle hMem_BK;//背景
GUI_MEMDEV_Handle hMem_FK;//前景
 hMem_BK = GUI_MEMDEV_Create(20,30,50,50); hMem_FK = GUI_MEMDEV_Create(20,30,50,50); GUI_MEMDEV_CopyFromLCD(hMem_BK ); while(1) {   GUI_MEMDEV_Select( hMem_FK);   GUI_MEMDEV_Write(hMem_BK); /************************************************************   這部分用於顯示,  顯示內容必須和上GUI_MEMDEV_Create函數中的參數相對應   GUI_MEMDEV_Create(起始坐標x,起始坐標y,顯示區域寬w, 顯示區域高h);
  //GUI_SetBkColor(GUI_RED);
  //GUI_Clear();
  //上兩行可以用來查看修改設定的內存設備區域,區域由紅色填充 ************************************************************
*/   GUI_MEMDEV_CopyToLCD(hMem_BK);   GUI_MEMDEV_Select(0);
  //GUI_MEMDEV_Delete(); }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM