Windows编程实验五.docx
文本预览下载声明
武汉轻工大学Windows编程实验报告(实验五)姓名: 刘 文 斌 院系:数学与计算机 学院班级:软件工程13 03班 学号: 50 老师: 刘 文 涛 2015.12.16实验五 常用控件[程序1:Ex_DlgCtrls] 用控件的编程方式来创建一个按钮(1) 选择“文件”“新建”菜单,在弹出的“新建”对话框中单击“工程”标签,选择MFCAppWizard(exe)的项目类型,在工程框中输入项目名Ex_DlgCtrls单击[确定]按钮,在出现的“Step 1”对话框中选择“基本对话框)”应用程序类型,单击[完成]按钮,创建一个默认的基于对话框的应用程序项目。 将项目工作区切换到ClassView页面,展开CEx_DlgCtrlsDlg类,右击CEx_DlgCtrlsDlg类名,弹出如图所示的快捷菜单。 从快捷菜单中选择Add Member Variable,出现如图所示的对话框,在Variable Type(变量类型)编辑框中输入CButto n(MFC按钮类),在Variable Name(变量名) 编辑框中输入要定义的CButton类对象名m_btnWnd。单击[OK]按钮,这样Visual C++就会自动在CEx_DlgCtrlsDlg 类中添加该成员变量。 在项目工作区的ClassView页面中,双击OnInitDialog函数名,在该函数中添加下列代码:BOOL CEx_DlgCtrlsDlg::OnInitDialog(){CDialog::OnInitDialog();…m_btnWnd.Create(你好, WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, CRect(20, 20, 120, 60), this, 201); // 创建CFont *font = this-GetFont(); // 获取对话框的字体m_btnWnd.SetFont(font); // 设置控件字体return TRUE; // return TRUE unless you set the focus to a control} 编译并运行,结果如图所示[程序2:映射控件消息]1. 在MFC中,映射一个控件消息是非常简便的,如下面的过程是对新添加的按钮控件映射BN_CLICKED(单击)消息。将项目工作区窗口切换到ResourseView页面,双击Dialog资源下的标识IDD_EX_DLGCTRLS_DIALOG,打开该对话框资源模板。删除“TODO: 在这里设置对话控制。”控件,添加一个按钮控件,保留其默认属性。如图所示。 2 按快捷键Ctrl+W,打开MFC ClassWizard对话框,查看“Class name”列表中是否选择了CEx_DlgCtrlsDlg,在IDs列表中选择IDC_BUTTON1,这是添加按钮后,系统自动为此按钮设置的默认标识符,然后在Messages框中选择BN_CLICKED消息。3 单击[Add Function]按钮或双击BN_CLICKED消息,出现“Add Member Function”对话框,在这里可以输入成员函数的名称,系统默认的函数名为OnButton1。单击[OK]按钮,在MFC ClassWizard的“Member functions”列表中将列出新增加的成员数。在此成员函数中添加下列代码:void CEx_DlgCtrlsDlg::OnButton1() {MessageBox(你按下了\Button1\按钮!);}5.编译并运行,当单击[Button1]按钮时,就会执行OnButton1函数,弹出一个消息对话框。这就是按钮BN_CLICKED消息的映射过程,其他控件的消息也可以类似操作。运行结果:[程序3:]写一个单文档程序,用菜单命令打开一个对话框,通过该对话框中的红色,绿色,蓝色单选按钮选择颜色,在视图中绘制不同颜色的矩形。步骤:1、新建一个单文档,并在菜单栏里新建一个菜单,如图:2,新建一个对话框类,在其中添加控件,如图:3、创建一个对话框类CFuxuanDlg 。给类添加成员变量,如图:4,进入Class Wizard 。选择对话框类CFuxuanDlg。分别选择ID 为IDC_BLUE、IDC_GREEN、IDC_RED,添加函数如下:void CFuxuanDlg::OnRed() {m_red = IsDlgButtonChecked(IDC_RED);UpdateWindow();}void CFuxuanDlg::OnGreen() {m_green = IsDlgButtonChecked(IDC_GREEN);UpdateWindow();}v
显示全部