🌸 MFC下拉框控件 | Combo Box
eg 计算器
1。新建MFC项目(基于对话框、静态库)
2。添加控件,删除初始的3个多余控件
加3个edit control
加1个combo box,属性sort改为false,data为 +;-;×;÷;%
加1个static text,修改其caption为=,
加1个按钮,caption为calculate
添加变量
test_num1,test_num2,test_result,test_operation
3。添加代码
双击按钮,添加代码:
void CMFCApplication2Dlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData();
switch (test_operation) {
case 0:
test_result = test_num1 + test_num2;
break;
case 1:
test_result = test_num1 - test_num2;
break;
case 2:
test_result = test_num1 * test_num2;
break;
case 3:
test_result = test_num1 / test_num2;
break;
case 4:
test_result = test_num1 % test_num2;
break;
}
UpdateData(FALSE);
}
4。运行
运行结果:
🌸 MFC列表框控件 | List Box
edit control的readonly属性设为true
// TODO: 在此添加额外的初始化代码
test_listbox.AddString(_T("apple"));
test_listbox.AddString(_T("banana"));
test_listbox.AddString(_T("cat"));
test_listbox.InsertString(2,_T("dog"));//index为3
双击listbox添加代码:
CString strText;
int nCurSel;
nCurSel = test_listbox.GetCurSel(); // 获取当前选中列表项
test_listbox.GetText(nCurSel, strText); // 获取选中列表项的字符串
SetDlgItemText(IDC_EDIT1, strText); //将选中列表项的字符串显示到编辑框中
运行结果
加一个弹窗,
void CMFCApplication8Dlg::OnLbnSelchangeList1()
{
// TODO: 在此添加控件通知处理程序代码
CString strText;
int nCurSel;
nCurSel = test_listbox.GetCurSel(); // 获取当前选中列表项
test_listbox.GetText(nCurSel, strText); // 获取选中列表项的字符串
SetDlgItemText(IDC_EDIT1, strText); //将选中列表项的字符串显示到编辑框中
if (nCurSel == -1)//判断是否选中
{
return;
}
MessageBox(strText);//弹窗
}