【MFC】两个ListBox控件数据交互
创始人
2025-05-28 22:43:33
0

一.控件ID名称

        界面如图下所示:

        候选数据列表的ID为:

        已选数据列表的ID为:

二.数据添加

        可以使用以下代码往框中添加数据:

((CListBox *)GetDlgItem(IDC_LIST_TO_CHO))->AddString("测试数据");

        显示效果如下:

         如果有多个数据,可以使用以下方法:

char CHO_Data[5][20] = {"测试数据一","测试数据二","测试数据三","测试数据四","测试数据五"};for (int i = 0; i < 5;i++)((CListBox *)GetDlgItem(IDC_LIST_TO_CHO))->AddString(CHO_Data[i]);

        显示效果如下:

        如果想让数据按照自己的顺序排序,可以在控件处将自动排序关闭:

三.把候选列表中数据插入到已选列表中

        实现代码如下:

CString szStr;
int GetCulSel = ((CListBox *)GetDlgItem(IDC_LIST_TO_CHO))->GetCurSel(); //获取到"待选数据列表"中鼠标所选择的数据顺序((CListBox *)GetDlgItem(IDC_LIST_TO_CHO))->GetText(GetCulSel,szStr); //获取到当前选择的文本内容((CListBox *)GetDlgItem(IDC_LIST_TO_INSERT))->AddString(szStr); //将文本添加在"已选数据列表"中

        效果如下:

        可以看到“已选数据列表”中的数据是乱的,需要把该控件的自动排序也关掉:

        关闭后数据就会按照插入的顺序往下排列:

五.把已选数据列表中的数据删除

        代码实现如下:

int GetCulSel = ((CListBox *)GetDlgItem(IDC_LIST_TO_INSERT))->GetCurSel(); //获取"已选数据列表"中鼠标所选择的数据顺序((CListBox *)GetDlgItem(IDC_LIST_TO_INSERT))->DeleteString(GetCulSel); //删除数据

        效果如下:

相关内容

热门资讯

吹风机养生:真能顶得上老中医吗... 近年来,社交平台上流行起了“吹风机养生”的说法,许多博主宣称用吹风机对着特定的穴位吹热风,可以温阳驱...
深夜王炸,GPT-5.5发布 财联社 美东时间周四,OpenAI公布了其最新的人工智能模型——GPT-5.5。该公司表示,该模型在...
台湾同胞参加海军成立77周年纪... 4月23日,台湾同胞登上海军舰艇参观并与海军军官合影留念。新华社记者 李杰 摄 新华社青岛4月23日...
特朗普:这世界疯了 美国司法部当地时间4月23日证实,参与强行控制并转移委内瑞拉总统马杜罗的美国陆军特种部队军士长甘农·...
从冲击千亿市值到被申请破产重整... 图/ic 八年亏损超84亿元!“中国影视第一股”华谊兄弟被申请重整。 4月23日晚,华谊兄弟传媒股份...
“保安与停车女子和好接吻”,A... 撰稿/苏士仪(媒体人) 编辑/王言虎 校对/王心 ▲女司机与保安发生肢体冲突一事,持续引发关注。图...
美伊冲突前景不明 国际油价再度... 当地时间4月24日,由于美国与伊朗冲突前景仍不明朗,市场避险情绪升温,国际油价再度上涨。布伦特原油上...
美国发生群体性枪击事件,8名1... 新华社消息,美国路易斯安那州什里夫波特市19日发生一起群体性枪击事件,造成8名儿童死亡,枪手被警方击...
274亿美金砸向核武器,威慑还... 文︱陆弃 能源部长克里斯·赖特在2026年4月16号的一场公开场合称,美国正在推进的核武器现代化计划...