创建MFC基本对话框及添加下拉框

MFC(Microsoft Foundation Classes),是一个微软公司提供的类库(class libraries)以C++类的形式封装了Windows的API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。
包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。

MFC是WinAPI与C++的结合。API,即微软提供的Windows下应用程序的编程语言接口,是一种软件编程的规范,但不是一种程序开发语言。

一、MFC介绍

VS2013界面


一、MFC建立界面工程
步骤1: 双击打开vs2013,进入 起始页,按Ctrl+Shift+N 组合快捷键(此时也可以一步步新建->项目操 作),可以新建工程,

选择模块下的Visual C++-->MFC-->MFC应用程 序,设定好项目文件名和路径,点击确定。

步骤2:进入应用程序类 型界面。勾选“基于对话框”,在“MFC的使用” 中,勾选“在共享DLL中 使用MFC(U)”,再点击下 一步。注:MFC可以在静态库下 使用,或者在共享DLL中 使用,但前者会把所有用到的dll文件集成到exe 文件,因此占用内存较大,所以建议选择后者。



步骤3: 进入用户界面功能。选择主框架样式,可以自由选择是否添加最小化框、最大化框;“关于”框也可以去掉;对话框标题一般不需要更改,默认与项目名称一致。

步骤4:进入高级功能界 面。高级功能一般默认即可,无须勾选其它选项。如果用不上"Active 控件",可以去掉其勾选。

步骤5: 进入生成的类界面。显示自动生成的两个类的头文件和源文件名称

步骤6: 建立完的工程自动生成了对应的界面



步骤7:

 修改对话框属性 

1.ID:对话框ID,唯一标识对话框资源,可以修改。

 2.Caption:对话框标题。可以修改。 

3.Border:边框类型。有四种类型:None、Thin、Resizing和Dialog Fram e。我们使用默认的Dialog Frame。

 4.Maximize:是否使用最大化按钮。我们使用默认的False。 

5.Minimize:是否使用最小化按钮。同样我们使用默认的False。 

6.Style:对话框类型。有三种类型:Overlapped(重叠窗口)、Popup (弹出式窗口)和Child(子窗口)。弹出式窗口比较常见。我们使用 默认的Popup类型。 

7.System Menu:是否带有标题栏左上角的系统菜单,包括移动、关闭 等菜单项。我们使用默认的True。 

8.Title Bar:是否带有标题栏。我们使用默认的True。 

9.Font(Size):字体类型和字体大小。如果将其修改为非系统字体,则U se System自动改为False。而如果Use System原来为False,将其修改为Tr ue,则Font(Size)自动设置为系统字体。这里我们使用默认的系统字体。

  • MFC添加虚函数屏蔽窗口默认ENTER关闭功能 
 步骤:

在窗口上右键添加类向导


  • 添加下拉框
步骤:
在窗口上通过工具箱添加Combo Box 通过属性窗口修改ID和显示字符
  1. 在控件上右键选择添加变量

2.在控件上右键选择添加事件处理


添加Setfocus和Selchange两个事件,实现增加下拉选项和选择选项弹出提示框

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
MFC的列表框控件,可以通过一些代码操作来实现在列表框插入下拉框。 首先,在对话框资源添加一个列表框控件,并为其设置一个标识符。 然后,在对话框类的OnInitDialog函数添加以下代码来创建一个下拉框: ``` CComboBox *pComboBox = new CComboBox(); pComboBox->Create(WS_CHILD | WS_VISIBLE | CBS_DROPDOWNLIST, CRect(0, 0, 100, 200), this, 1); pComboBox->AddString(_T("Option 1")); pComboBox->AddString(_T("Option 2")); pComboBox->AddString(_T("Option 3")); pComboBox->SetCurSel(0); CRect rect; GetDlgItem(IDC_LISTBOX)->GetWindowRect(&rect); ScreenToClient(&rect); pComboBox->SetWindowPos(NULL, rect.left, rect.top, rect.Width(), rect.Height(), SWP_SHOWWINDOW); ``` 以上代码将创建一个下拉框,将其添加对话框并显示在列表框的位置。 最后,在对话框的OnBnClickedButton函数添加以下代码来将下拉框插入到列表框: ``` CListBox *pListBox = (CListBox*)GetDlgItem(IDC_LISTBOX); HWND hWnd = pListBox->GetSafeHwnd(); pComboBox->ModifyStyle(0, WS_POPUP | WS_BORDER, 0); pComboBox->SetParent(CWnd::FromHandle(hWnd)); pComboBox->ShowWindow(SW_SHOW); ``` 通过以上代码,我们将下拉框插入到列表框,并且可以在对话框显示和使用该下拉框。 需要注意的是,这只是一种插入下拉框的方法,具体的实现可能会根据实际需求有所不同。另外,由于代码长度的限制,这里只是给出了一个简单的示例,实际使用时还需要根据具体情况进行适当的修改和调整。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值