MFC列表框的使用(二)

程序功能介绍:

按下button1发送(示例编辑框)中输入的内容到两个列表框中。
按下button2删除选中的内容

一,设计交互界面

在这里插入图片描述

二.编程前的设置准备

添加多选列表的变量
(1)右键多选框
在这里插入图片描述
(2)选择类别Control,并命名m_cmb1.
在这里插入图片描述
(3)取消自动分类的功能 如图改为False
在这里插入图片描述

Button1 添加 代码

void CMFCday3ADlg::OnBnClickedButton1()
{
	// TODO: 在此添加控件通知处理程序代码
	CString texta;//创建字符串
	GetDlgItemText(IDC_EDIT1,texta);//将字符串与输入文本框绑定
	m_cmb1.AddString(texta);//将输入的字符串写入列表中
	m_cmb1.SetCurSel(m_cmb1.GetCount()-1);//设置文本位置,为最下方 GetCount为所有选项的个数 其索引地址从0开始,数值上多一个。

	m_lsb.AddString(texta);
	m_cmb1.SetCurSel(m_lsb.GetCount()-1);

}

Button1 删除 代码

void CMFCday3ADlg::OnBnClickedButton2()
{
	// TODO: 在此添加控件通知处理程序代码
	int nIndex;//建立索引目标变量

	nIndex=m_cmb1.GetCurSel();//将当前选择的的索引数值分发给索引变量
	if(nIndex>-1)//最小值为0,如果大于-1则有选项被选中
	{
	    m_cmb1.DeleteString(nIndex);//删除所选
	    
		if(nIndex<m_cmb1.GetCount())//当前选择的选项的索引值小于所有个数,证明还有选项可以删除
		m_cmb1.SetCurSel(nIndex);//将删除后自动跳转的索引值,设置为选择项
		else 
			m_cmb1.SetCurSel(0);
	}
	nIndex=m_lsb.GetCurSel();
	if(nIndex>-1)
	{
	    m_lsb.DeleteString(nIndex);

		if(nIndex<m_cmb1.GetCount())
		m_lsb.SetCurSel(nIndex);
		else 
			m_lsb.SetCurSel(0);
	}
}
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值