找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 739|回复: 0
收起左侧

μCGUI光标显示有异常,移动光标后,原来光标的影子一直存在

[复制链接]
ID:556568 发表于 2022-10-10 11:32 | 显示全部楼层 |阅读模式
各位好,我刚学UCGUI,使用9320的触摸屏,NXPK60的板子,在使用野火的emwin例程时,移植到板子上,按键触摸是正常的,光标的位置也是对的,但是移动光标后,原来光标的影子一直存在,请问应该怎么解决?

51hei图片_20221010113132.jpg

单片机源程序如下:
  1. #include "DIALOG.h"

  2. /*********************************************************************
  3. *
  4. *       Defines
  5. *
  6. **********************************************************************
  7. */
  8. /* 控件ID */
  9. #define ID_FRAMEWIN_0 (GUI_ID_USER + 0x00)
  10. #define ID_BUTTON_0   (GUI_ID_USER + 0x01)

  11. /* 资源表 */
  12. static const GUI_WIDGET_CREATE_INFO _aDialogCreate[] = {
  13.   { FRAMEWIN_CreateIndirect, "Framewin", ID_FRAMEWIN_0, 0, 0, 240, 320,0, 0x0, },
  14.   { BUTTON_CreateIndirect, "Button0", ID_BUTTON_0, 10, 30, 160, 48, 0, 0x0, },
  15. };

  16. /**
  17.   * @brief 对话框回调函数
  18.   * @NOTE 无
  19.   * @param pMsg:消息指针
  20.   * @retval 无
  21.   */
  22. static void _cbDialog(WM_MESSAGE * pMsg)
  23. {
  24.   WM_HWIN hItem;
  25.   int     NCode;
  26.   int     Id;

  27.   switch (pMsg->MsgId)
  28.   {
  29.     case WM_INIT_DIALOG:
  30.       /* 初始化框架窗口控件 */
  31.       hItem = pMsg->hWin;
  32.       FRAMEWIN_SetTitleHeight(hItem, 32);
  33.       FRAMEWIN_SetFont(hItem, &GUI_Font16_1);
  34.       FRAMEWIN_SetText(hItem, "STemWIN@EmbedFire STM32F103");
  35.       /* 初始化Button0 */
  36.       hItem = WM_GetDialogItem(pMsg->hWin, ID_BUTTON_0);
  37.       BUTTON_SetFont(hItem, &GUI_Font24_ASCII);
  38.       break;
  39.     case WM_NOTIFY_PARENT:
  40.       /* 获取控件ID */
  41.       Id = WM_GetId(pMsg->hWinSrc);
  42.       /* 获取消息内容 */
  43.       NCode = pMsg->Data.v;
  44.       switch(Id)
  45.       {
  46.         case ID_BUTTON_0: // Notifications sent by 'Button'
  47.         switch(NCode)
  48.         {
  49.           case WM_NOTIFICATION_CLICKED:
  50.             break;
  51.           case WM_NOTIFICATION_RELEASED:
  52.             break;
  53.         }
  54.         break;
  55.       }
  56.       break;
  57.     default:
  58.       WM_DefaultProc(pMsg);
  59.       break;
  60.   }

  61. }

  62. /**
  63.   * @brief 以对话框方式间接创建控件
  64.   * @note 无
  65.   * @param 无
  66.   * @retval hWin:资源表中第一个控件的句柄
  67.   */
  68. WM_HWIN CreateFramewin(void)
  69. {
  70.   WM_HWIN hWin;

  71.   hWin = GUI_CreateDialogBox(_aDialogCreate, GUI_COUNTOF(_aDialogCreate), _cbDialog, WM_HBKWIN, 0, 0);
  72.   return hWin;
  73. }

  74. /**
  75.   * @brief GUI主任务
  76.   * @note 无
  77.   * @param 无
  78.   * @retval 无
  79.   */
  80. void MainTask(void)
  81. {
  82.   /* 设置桌面窗口颜色 */
  83.   WM_SetDesktopColor(GUI_BLACK);

  84.         /* 创建对话框 */
  85.         CreateFramewin();
  86.   /* 开启光标 */
  87.   GUI_CURSOR_Show();

  88.         while (1)
  89.         {
  90.                 GUI_Delay(500);
  91.         }
  92. }
复制代码





回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表