🌸 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);//弹窗
}