打印
[STM32F1]

新人求助,ucgui sendkeymsg收不到问题?(求大神指导)

[复制链接]
1081|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
leodjh|  楼主 | 2018-5-9 13:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/*********************************************************************
*                SEGGER MICROCONTROLLER SYSTEME GmbH                 *


#include "GUI.h"
#include "SIM.h"
#include "FRAMEWIN.h"
#include "LISTBOX.h"
#include <stddef.h>
#include "WM.h"
#include "BUTTON.h"
WM_HWIN mainwin;
int status = 0;

static void MainBin**WinCallBack(WM_MESSAGE * pMsg)
{
    WM_HWIN hWin = pMsg->hWin;
    int i = 0;
    switch (pMsg->MsgId)
    {
    case WM_CREATE:
        //WIDGET_SetDefaultEffect(&WIDGET_Effect_None);

        //LISTBOX_Handle hListBox;
        /* Create the listbox */
        //hListBox = LISTBOX_Create(_aListBox, 100, 100, 120, 75, WM_CF_SHOW);
        //WM_SetFocus(hListBox);
        //LISTBOX_SetFont(hListBox, &GUI_Font13B_1);
        //SCROLLBAR_CreateAttached(hListBox, SCROLLBAR_CF_VERTICAL);
        //BUTTON_CreateAsChild(10,10,10,10,mainwin,5,0);

        WM_SetFocus(mainwin);
        break;
    case WM_PAINT:
        GUI_SetBkColor(GUI_BLACK);
        GUI_Clear();
        GUI_SetColor(GUI_WHITE);
        GUI_SetTextMode(GUI_TM_TRANS);
        GUI_DispStringAt("hello world",50,50);
        GUI_DispDecAt(status,100,100,2);

      //  GUI_DrawBitmap(&sg_start**,
      //                 (MYWIN_XSIZE - sg_start**.XSize) / 2,
      //                  (MYWIN_YSIZE - sg_start**.YSize) / 2);
        break;
    case WM_KEY:
        printf(">>key  aaaaaa        \n");
        switch (((WM_KEY_INFO*)pMsg->Data.p)->Key)
        {
            case 19:
            printf("recv 19");
            status = (status == 0)? 1: 0 ;
            WM_InvalidateWindow(pMsg->hWin);
            break;
        }
        break;
    case WM_DELETE:
        break;
    default:
        WM_DefaultProc(pMsg);
    }
}
void MainTask(void) {
  GUI_Init();
  /* set callback routine for hardkey */
  //SIM_HARDKEY_SetCallback(1, &_cbKeyUp);
  //SIM_HARDKEY_SetCallback(2, &_cbKeyDown);
  /* start demo */
  mainwin = WM_CreateWindow(0, 0, 300, 300,
                                WM_CF_SHOW | WM_CF_MEMDEV, MainBin**WinCallBack, 0);
  while(1){
    GUI_Exec();
    GUI_Delay(500);
    GUI_SendKeyMsg(19, 1);
  }
}

评论
leodjh 2018-5-9 13:52 回复TA
sendkeymsg发生的消息一直收不到,找不到原因,貌似也不是焦点问题,求大神指导 
沙发
xuanhuanzi| | 2018-5-9 16:29 | 只看该作者
能否找个这种例子看看差别。

使用特权

评论回复
板凳
xuanhuanzi| | 2018-5-9 16:31 | 只看该作者
https://blog.csdn.net/eryueniao1989/article/details/77989361
看看这个贴能否帮你解决。也可能是你使用这个不正确。

使用特权

评论回复
地板
gejigeji521| | 2018-5-9 22:03 | 只看该作者
没用过uc,用过free

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

7

帖子

0

粉丝