| 网站首页 | 业界新闻 | 群组 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 686 人关注过本帖
标题:获取combobox 的索引值时,索引值重复出现现象。
只看楼主 收藏
man94ht
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2017-5-7
结帖率:100%
  已结贴   问题点数:20  回复次数:4   
获取combobox 的索引值时,索引值重复出现现象。
下列代码简写,只写主体:
void init()//初始化
{
    ...
     drop_down_list = CreateWindow(_T("combobox"), NULL, WS_CHILD | WS_VISIBLE | WS_VSCROLL | CBS_DROPDOWNLIST | CBS_HASSTRINGS,
       190, 20, 80, 100, hWnd, (HMENU)DROP_DOWN_LIST, hInstance, NULL);

       SendMessage(drop_down_list, CB_ADDSTRING, 0, (LPARAM)_T("圆"));
       SendMessage(drop_down_list, CB_ADDSTRING, 0, (LPARAM)_T("椭圆"));
        ....
}

LRESULT CALLBACK WndProc(....)
{
    ...
    case DROP_DOWN_LIST:
    {
        //获取点击项的索引值
        int idx = SendMessage(drop_down_list, CB_GETCURSEL, 0, 0);
    AllocConsole();
    freopen("conout$", "w", stdout);
    cout << idx << endl;
        break;
    }
}
结果:
问题:为什么点击时会调用这个消息好几次。导致重复刷idx 5次。
附件: 您没有浏览附件的权限,请 登录注册
2017-07-23 15:45
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:239
帖 子:5528
专家分:31113
注 册:2011-1-18
  得分:20 
DROP_DOWN_LIST 是什么东西?
2017-07-24 10:21
man94ht
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2017-5-7
  得分:0 
回复 楼主 man94ht
在创建下拉列表句柄的时候有的那个东西。     我用错了吗?那该怎么做
2017-07-24 15:49
yangfrancis
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:127
帖 子:1479
专家分:7450
注 册:2014-5-19
  得分:0 
怎么会在DROP_DOWN_LIST下面读索引呢?一般来说是点中某个按钮的时候读取啊。
2017-07-24 17:58
man94ht
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2017-5-7
  得分:0 
回复 4楼 yangfrancis
那个按钮的值我不知道。。。刚写就靠感觉写。东拼西凑的。    能告诉我点击的那个值是怎么弄吗?我点击DROP_DOWN_LIST是有问题的。就是重复回调好几次。我也不知道谁回调的它。
2017-07-26 18:01







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.296621 second(s), 8 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved