硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2238|回复: 4
收起左侧

[emWin] DROPDOWN小工具的问题

[复制链接]

12

主题

59

回帖

95

积分

初级会员

积分
95
发表于 2018-1-23 11:01:32 | 显示全部楼层 |阅读模式
每次创建包含有DROPDOWN小工具的页面,都会有正确的WM_NOTIFICATION_SEL_CHANGED消息发送给回调函数(即使没有操作小工具)。
我并不希望有这样的情况发生。这个地方是可设置的吗?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115749
QQ
发表于 2018-1-23 11:15:04 | 显示全部楼层
建议换个消息,不使用这个WM_NOTIFICATION_SEL_CHANGED

回复

使用道具 举报

12

主题

59

回帖

95

积分

初级会员

积分
95
 楼主| 发表于 2018-1-23 11:20:59 | 显示全部楼层
eric2013 发表于 2018-1-23 11:15
建议换个消息,不使用这个WM_NOTIFICATION_SEL_CHANGED

我试过   WM_NOTIFICATION_VALUE_CHANGED  不响应的
回复

使用道具 举报

12

主题

59

回帖

95

积分

初级会员

积分
95
 楼主| 发表于 2018-1-23 11:21:28 | 显示全部楼层

  { DROPDOWN_CreateIndirect,  "波特率",                         GUI_ID_DROPDOWN,        603,200,135,90,0,0,0},









        DROPDOWN_SetFont(WM_GetDialogItem(hWin,GUI_ID_DROPDOWN), GUI_FONT_24B_ASCII);
        //DROPDOWN_SetBkColor(WM_GetDialogItem(hWin,GUI_ID_DROPDOWN),DROPDOWN_CI_UNSEL,FzyEditBkColor);
       
        for(i=0;i<8;i++)
        {
                memset(strTemp,0,sizeof(strTemp));
                m = fzy_ContInteger((float)Rate[i]);
                GetString(strTemp,Rate[i],m);
                DROPDOWN_AddString(WM_GetDialogItem(hWin,GUI_ID_DROPDOWN),strTemp);//
                memset(strTemp,0,sizeof(strTemp));
        }
       
        DROPDOWN_SetSel(WM_GetDialogItem(hWin,GUI_ID_DROPDOWN),FzyDevPara.BaudRate);//
       
        /* 使能下来列表控件自动使用滚动条  */
        DROPDOWN_SetAutoScroll(WM_GetDialogItem(hWin,GUI_ID_DROPDOWN), 1);
       
        /* 设置下拉列表控件展开后的高度  */       
        //DROPDOWN_SetListHeight(WM_GetDialogItem(hWin,GUI_ID_DROPDOWN), 120);
       
        /* 设置下拉列表控件上滚动条的宽度 */
        DROPDOWN_SetScrollbarWidth(WM_GetDialogItem(hWin,GUI_ID_DROPDOWN), 33);
       
        /* 设置下拉列表控件中各个选项之间的间距 */
        DROPDOWN_SetItemSpacing(WM_GetDialogItem(hWin,GUI_ID_DROPDOWN), 9);







        case GUI_ID_DROPDOWN: // Notifications sent by 'Dropdown'
                switch(NCode)
                {
                        case WM_NOTIFICATION_CLICKED:
                                // USER START (Optionally insert code for reacting on notification message)
                                // USER END
                        break;
                        case WM_NOTIFICATION_RELEASED:
                                // USER START (Optionally insert code for reacting on notification message)
                                // USER END
                        break;
                        case WM_NOTIFICATION_SEL_CHANGED:
                                Rate = DROPDOWN_GetSel(WM_GetDialogItem(hWin, GUI_ID_DROPDOWN));
                        break;
                }
        break;

以上是代码
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115749
QQ
发表于 2018-1-23 15:45:38 | 显示全部楼层
帮你测试了,你的程序模板应该有问题,另外检测下你的触摸是不是乱跳,或者没有正确释放,一直是按下状态。

我的测试,仅选择改变了才会输出。

回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-5-16 05:29 , Processed in 0.210384 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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