云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > Visual C++.NET课后答案

Visual C++.NET课后答案

  • 62 次阅读
  • 3 次下载
  • 2025/5/25 5:10:45

{

CStudyDlg mydlg;

if(IDOK==mydlg.DoModal()) { ……//单击“确定”后的处理 }

if(CANCEL==mydlg.DoModal()) { }

}

上面的程序中,先是定义一个对话框对象mydlg,然后利用这个对象调用DoModal函数以产生一个模态对话框。另外,在视图类中并不知道这个CStudyDlg对话框是什么样的数据类型,所以还必须在视图类的源文件中包含这个CStudyDlg类的头文件,如下:

#include \

调试运行该程序,会看到如图所示的运行结果,单击“显示对话框”菜单,就会出现刚刚设计的学习对话框,如图所示。

……//单击“取消”后的处理

非模态对话框:基于上面模态对话框步骤,修改OnDialog()

void CDialogView::OnDialog() {

CStudyDlg *pDlg=new CStudyDlg; pDlg->Create(IDD_DIALOG1,this); pDlg->ShowWindow(SW_SHOW); }

调试并运行Dialog程序,如图所示,这就是非模

态对话框的特点。因为程序显示非模态对话框时,并不会停留在某条语句处,所以CDialogView类的OnDialog函数内部的代码就会顺序地被执行,直到该函数执行结束,这时,程序就可以执行其它任务了,例如响应“文件”菜单的单击操作。

4. 如何实现在运行单文档应用程序时,首先弹出一个模态对话框?

答:.首先你要新建一个对话框,并为这个对话框新建一个类,假如为CMyDlg。在应用程序类(C***App)的InitInstance()函数里AfxEnableControlContainer();这句话后面添加如下代码(当然要包含头文件MyDlg.h): CMyDlg dlg;

if (dlg.DoModal() != IDOK) {

return FALSE;

}

5. 简述属性页对话框创建步骤?

答:属性页对话框是将多个对话框集中起来,通过标签将各个页面激活。与属性页对话框相关的类主

要包括CPropertySheet类和CPropertyPage类。一个属性页对话框可以包括一个CPropertySheet类和多 个CPropertyPage类对象。

CPropertySheet类是CWnd类的派生类,其对象作为属性对话框的窗口框架出现,主要实现管理各 个属性页面的作用。其用于管理属性页对话框的主要成员函数详见msdn。 CPropertyPage类是CDialog类的一个派生类,其用于管理属性页对话框的主要成员函数详见msdn。 使用CPropertySheet类和CPropertyPage类创建属性页对话框的示例步骤如下:

(1) 在资源编辑器中新增5个对话框资源,其ID值分别为:IDD_DIALOG1、IDD_DIALOG2、 IDD_DIALOG3、IDD_DIALOG4、IDD_DIALOG5。并为这些对话框资源新增5个以CPropertyPage类为基类的

派生类CMyPropertyPage1、CMyPropertyPage2、CMyPropertyPage3、CMyPropertyPage4、 CMyPropertyPage5。

(2) 在应用程序自动生成的对话框头文件和实现文件从工程中删除,并新增一个以CPropertySheet

类为基类的派生类CMyPropertySheet,该类的头文件和实现文件新增部分如下所示: 在头文件中增加: #include\ #include\ #include\ #include\ #include\ CMyPropertyPage1 m_Page1; CMyPropertyPage2 m_Page2;

CMyPropertyPage3 m_Page3; CMyPropertyPage4 m_Page4; CMyPropertyPage5 m_Page5;

在实现文件中的构造函数中加入:

CMyPropertySheet::CMyPropertySheet(LPCTSTR pszCaption, CWnd* pParentWnd, UINT iSelectPage):CPropertySheet(pszCaption, pParentWnd, iSelectPage) {

AddPage(&m_Page1); AddPage(&m_Page2); AddPage(&m_Page3); AddPage(&m_Page4); AddPage(&m_Page5);

}

(3)按照下面所示的代码,在应用程序类中修改InitInstance()函数。 #include \

//把以前生成默认对话框的两行代码修改成下面的两行代码

CMyPropertySheet dlg(\、如何创建一个属性页对话框?\

dlg.SetActivePage(3);

6. 基本控件有哪些?举例说明基本控件的方法?

答: Button、 StaticText、EditBox、ScrollBar、ComboBox、ListBox和CheckListBox等

例如按钮控件使用方法。

(1)新建一个基于对话框的应用程序项目,命名为“Button”。

(2)删除对话框上自带的“确定”和“取消”以及静态文本框。 (3)添加一个按钮和编辑框控件。

在右边工具栏上单击Button按钮拖动到对话框,修改Button的Captio为叮咚按钮。单击Edit Control按钮,拖动到对话框。

(4)给按钮添加消息处理函数,方法是双击“叮咚按钮”在OnBnClickedButton1()函数中添加如下代码:

void CButtonDlg::OnBnClickedButton1() {

SetDlgItemText(IDC_EDIT1, _T(\按钮功能实现了\

}

调试运行程序。单击“叮咚按钮”,结果如图所示。

7. 设计一个对话框应用程序。要求:能选择字体(宋体、黑体、楷体)、字型(粗体、斜体、下划线)、字号(1-64,带旋转按纽)并在“示例”组框中显示示例文字“基于对话框的应用”。

答:创建对话框程序,添加按钮,建立消息映射,添加代码,使用字体对话框CFontDialog。 8. 编写一个对话框应用程序,程序运行时,通过编辑框输如被减数与减数的值,单击“计算”按钮,将像是这两个数的差。

答:创建对话框程序,添加三个编辑框和一个计算按钮,为编辑框添加关联的double类型的变量,在按钮中进行计算,注意需要使用UpdateData函数进行更新。

9. 设计一个“用户登录对话框”,要求用户输入帐号和用户密码,单击“确定”按钮,

可以实现用户登录功能。 答:创建对话框程序,添加一个对话框,在InitInstance中添加代码进行验证,不正确则退出,正确则继续。

10. 要求通过滑动水平滚动条和垂直滚动条,同时有对应进度条显示滑动范围。

答:创建对话框程序,添加一个水平、一个垂直滚动条和一个进度条,为其添加关联变量。再添加一个按钮,添加消息映射函数,添加相关代码。

第五章习题 参考答案

1. 常见的菜单类型有哪几种?

答:常见的菜单可以分为三类:主菜单、弹出菜单和快捷菜单。

主菜单是指出现在应用程序主窗口或最上层窗口的菜单。主菜单由菜单名和菜单项构成。菜单名指出一组菜单项命令的主要功能和目标。常见的菜单名有:文件、编辑、帮助等。通常,每个主菜单都对应有一个弹出菜单作为它的子菜单,而一个菜单项或对应一个确定的

功能,或对应一个弹出菜单。

弹出菜单是指选择主菜单或一个菜单项时弹出的子菜单。用户可以定义多重嵌套的弹出式菜单,菜单项右边的三角符号表示有子菜单存在。可以通过放置分隔线在逻辑或功能上对菜单项进行分组。

快捷菜单是显示于窗体之上的浮动式菜单,快捷菜单的显示是由单击鼠标右键触发的,所弹出的具体菜单依赖于被选中的对象,以及光标或鼠标在工作区域内所指的位置,由此,快捷菜单又称为上下文菜单。

2. 简述菜单设计的主要步骤有哪些? 答:1.用菜单编辑器编辑菜单资源

2.将菜单资源链接到对话框(对于对话框的菜单) 3.添加消息响应函数 4.编写消息响应函数

3. 简述快捷菜单创建的基本步骤有哪些? 答:1. 添加菜单资源

2.建立消息映射,编辑响应函数

3.在CMainFrame类中加入WM_CONTEXTMENU消息的处理函数

4.编辑WM_CONTEXTMENU消息处理函数 4. 简述工具栏创建的基本步骤有哪些?

答:1.用编辑器编辑工具栏资源;2.若工具栏资源没有对应的菜单资源,或者没有给对应的菜单资源添加消息响应函数则进行3和4,否则编辑完成; 3.添加消息响应函数; 4.编写消息响应函数

5. 编写一个单文档应用程序MyDraw,为程序添加一个“颜色”主菜单,当运行程序时,

用户单击“颜色”菜单时,弹出系统自定义的颜色对话框。 答:略

6. 为应用程序MyDraw新增一个“线宽”主菜单,且“线宽”主菜单下包含“1”“2”

两个菜单项,在状态栏的最右侧,增加一个窗格,当运行程序时,用户选择了“线宽”下的“1”菜单项后,在窗格中显示“线宽1”,当用户选择了“2”是在窗格中显示“线宽2”。 答:略

7. 为应用程序MyDraw新增菜单项控制功能,当“线宽”下的“1”或“2”被选中时,在“1”或“2”前添加复选标记。 答:略

8. 为应用程序MyDraw中增加的菜单添加工具栏按钮,并为“线宽”菜单添加快捷菜单。 答:略

9. 新建一个基于对话框的应用程序,为其添加在单文档应用程序中添加的两个主菜单。 答:略

第六章习题 参考答案

1. 什么是DC?什么是CDC类?

答:DC:Windows使用抽象设备的管理方法,一个图形输出设备可以是显示器或打印机等物理设备。Windows用一个称为设备环境(Device Context,DC)的虚拟逻辑设备来描述这些输出设备。CDC:包括在MFC类库中的所有设备环境类的基类,对GDI的所有绘图函数进

搜索更多关于: Visual C++.NET课后答案 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

{ CStudyDlg mydlg; if(IDOK==mydlg.DoModal()) { ……//单击“确定”后的处理 } if(CANCEL==mydlg.DoModal()) { } } 上面的程序中,先是定义一个对话框对象mydlg,然后利用这个对象调用DoModal函数以产生一个模态对话框。另外,在视图类中并不知道这个CStudyDlg对话框是什么样的数据类型,所以还必须在视图类的源文件中包含这个CStudyDlg类的头文件,如下: #include \调试运行该程序,会看到如图所示的运行结果,单击“显示对话框”菜单,就会出现刚刚设计的学习对话框,如图所示。 ……//单击“取消”后的处理 非模态对话框:基于上面模态对话框步骤

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com