第五章 对话框和标准控件
第五章 常用控件
5.5按钮控件
按钮类控件是被系统预定义为Button的一类控件,该 类控件具有十余种不同的窗口风格,包含了普通的下压按钮、 单选按钮、检查按钮和分组框等多种常用的按钮形式。 下压按钮的作用是对用户的鼠标单击作出反应并触发 相应的事件,在按钮中既可以显示正文,也可以显示位图。 检查按钮可作为一种选择标记,可以有选中、不选中 和不确定三种状态。 单选按钮一般都是成组出现的,具有互斥的性质,即 同组单选按钮中只能有一个是被选中的。 检查按钮、单选按钮和下压按钮只能发送通知码为 BN_CLICKEN(单击按钮)和BN_DOUBLECLICKED(双 击按钮)的WM_COMMAND消息
5.4 编辑类控件
编辑类控件是一种可以用来接受用户键盘字符输 入的矩形区域,可以在其内进行编辑操作。该类控件 是程序接受用户字符输入的一种主要手段。 可以通过使用CWnd类成员函数SetWindowText() 和GetWindowText()来设定和获取一个编辑类控件中 的文本。
编辑框控件 (CEdit类)
CEdit类的主要成员函数
BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID ) void GetWindowText( CString& rString ) const; int GetWindowTextLength( ) const; void GetSel( int& nStartChar, int& nEndChar ) const; int LineFromChar( int nIndex = –1 ) const; int LineIndex( int nLine = –1 ) const; int GetLineCount( ) const; void SetWindowText( LPCTSTR lpszString ); void SetSel( int nStartChar, int nEndChar, BOOL bNoScroll = FALSE ); void ReplaceSel( LPCTSTR lpszNewText, BOOL bCanUndo = FALSE );
对话框及常用控件
2
对话框程序的创建
2.1 一个对话框程序 2.2 创建对话框资源模板 2.3 利用对话框类CDialog操纵对话框 2.4 初始化对话框 2.5 对话框的调用 2.6 对话框的消息处理
2.1
一个对话框程序
1.程序功能 该应用程序具有认证的功能:当该程序运行时,首先弹 出一个“密码验证” 对话框,让用户输入其用户名和密 码。用户需要输入用户名“good”和用户密码“ good ” 后才能进入主界面,若有一个输入错误,都不能进入。 2.程序类型
1.3 对话框的组成(续)
对话框类 从CDialog类派生的对话框类提供编程接口来 管理与对话框模板相关联的对话框。 CDialog 类的 许多成员函数与对话框编程密切相关,可供程序员 调用。由于对话框是一种窗口,因此相应的对话框 类必须与一个Windows窗口相联系,而对话框资源 模板就是用于创建这个 Windows窗口及其包含在其 中的控件。 对话框类可以看作对话框应用程序的一种程序 员接口,用户对应用程序操作,后台调用的都是该 类的成员函数来完成的。
可见在对话框的构造函数中主要是对对话框的数据成员变量 进行初始化。
2.4
初始化对话框(续)
2.在WM_CREATE的消息映射函数中初始化 由于对话框也是窗口,它在窗口创建时会收到 WM_CREATE 消息,该消息的响应函数是 OnCreate()。 这样,就能在窗口创建中做一些初始化工作。尽管用户 可能在 WM_CREATE 消息处理函数中进行一些数据成员 的初始化工作,但更通常的做法是在对话框中的所有控 件都建立起来之后,响应消息 WM_INITDIALOG 时,对 数据成员进行初始化。 3.在WM_INITDIALOG的消息映射函数中初始化 在对话框创建时,会收到 WM_INITDIALOG 消息,该 消息的响应函数是OnInitDialog()。在得到了
VC++ 课件 第05章 对话框和常用控件
5.2控件的创建和使用方法
5.2.1控件的创建方法 控件的创建方式有以下两种: 一种是在对话框模板中用编辑器指定控件,也就是说,将控件的父窗口指 定为对话框,这样做的好处是明显的,因为当应用程序启动该对话框时, Windows系统就会为对话框创建控件;而当对话框消失时,控件也随之清 除。 另一种方式是将控件看作是任一窗口的子窗口,并通过调用相应的Create 函数来创建。 [例Ex_SDIHello] 在上例Ex_SDIHello的基础上用子窗口方式创建控件。 (1)打开CMyDlg的头文件MyDlg.h,添加一个按钮类CButton指针变量: class CMyDlg : public CDialog { // Construction public: CMyDlg(CWnd* pParent = NULL); // standard constructor CButton *m_btnWnd; … }
5.1对话框的使用
在程序中使用对话框 (1)利用项目工作区的ClassView标签项,将Ex_SDIHello.cpp源文件打开; (2)在Ex_SDIHello.cpp源文件的前面加上包含类CMyDlg的头文件: #include "MyDlg.h" (3)在InitInstance函数体中的“return TRUE;”语句之前添加下列代码: CMyDlg dlg; dlg.DoModal(); DoModal是模态对话框最常用的函数,它负责对话框的显示和终止。 (4)编译并运行。在程序的一开始就出现用户自己设计的对话框,单击 [Button1]按钮将弹出“欢迎进入对话框的设计!”的消息对话框来。
5.1对话框的使用
5.1.2使用对话框编辑器
打开对话框编辑器
将项目工作区窗口切换到ResourceView页面,双击Dialog目录下任意一个对 话框ID。或者,选择“Insert”“Resource”菜单命令(或按快捷键Ctrl+R), 选择Dialog项,单击New。
access数据库应用教程5,窗体与控件
Access数据库应用教程
主/子表窗体
数据表窗体
主/子表窗体
电脑基础· 实例· 上机系列丛书
清华大学出版社
Access数据库应用教程
数据透视表/数据透视图
一个数据透视表窗体。 “数据透视表”窗体和“数据透视图”窗体 与窗体的“数据透视表”和“数据透视图” 视图不同。Access不能直接创建数据透视 表/数据透视图窗体,但可在数据透视表/数 据透视图视图中拖放字段来创建布局,以数 据透视表/数据透视图的方式显示数据。
Access数据库应用教程
第5章
学习目标 本章要点 上机练习 习 题
窗体与控件
电脑基础· 实例· 上机系列丛书
清华大学出版社
Access数据库应用教程
学习目标
窗体不仅用于查看、添加、编辑和删除数据,还提供 了直观的用户界面用于创建系统管理窗体。窗体通过 标签、文本框和命令按钮等各种控件来创建界面。控 件可以绑定到表或查询的字段,从而通过控件便可显 示或修改数据。创建窗体也就是在窗体中布臵各种控 件,并建立控件与表或查询的关联。Access为用户提 供了各种窗体向导,使用窗体向导可以快速创建各种 常用的窗体。窗体设计器则是更专业的窗体设计工具, 用于创建格式更为丰富的自定义窗体。本章将在介绍 窗体和控件的基础上,详细讲解如何使用窗体向导和 窗体设计器创建窗体。
电脑基础· 实例· 上机系列丛书
清华大学出版社
Access数据库应用教程
按窗体筛选
设置了筛选准则后,单击工具栏上的 足筛选条件的记录。 筛选条件在窗体打开时一直有效,若要取消筛选,可单击工具栏上的 钮,或选择“记录/取消筛选/排序”命令。 按 按钮执行筛选,窗体中则只显示满
第五章菜单工具栏状态栏和对话框
11. 显示窗口列表(Window List)检查框:
决定是否显示所有打开的子窗体标题。
对MDI窗体和MDI子窗体有效,对普通窗体无效。
5.1 菜单设计
3.菜单设计的几项操作:
(1).设计下拉菜单 (2).设计子菜单或改变子菜单级别 (3).为菜单项分组
菜单名用减号“-” (4).为菜单项指定访问键和快捷键
5.4.2 通用对话框
三、通用对话框使用---打开/另存为对话框
属性
4.InitDir(初始化路径)属性:该属性用来指定打开对话框 中的初始目录,若不设置,系统则默认为“C:\My Documents\”。
sbrScrl
4
Scroll Lock 键。当激活滚动锁定时,用黑体显示字母 SCRL,反之,当停用滚动键时, 显示暗淡的字母。
sbrTime 5 Time。以系统格式显示当前时间。
sbrDate 6 Date。以系统格式显示当前日期。
5.3 状态栏(StatusBa源自 控件)3.状态栏事件响应及显示信息修改
2. 在ToolBar控件中添加按钮 (1)ToolBar控件
ToolBar控件包含一个按钮对象集合,该对象被用来创 建与应用程序相关联的工具栏。工具栏包含一些按钮,这 些按钮与应用程序菜单中各项的按钮对应,工具栏为用户 访问应用程序的最常用功能和命令提供了图形接口。
(2)为工具栏连接按钮 右键单击Toolbar控件,选择“属性”命令打开如图2所
False(缺省):选择“取消”按钮,没有错误警告。
2、 通用对话框的方法
除了Acton属性,VB还提供了一组方法用来打开不同类型对话框
ShowOpen
ShowSave ShowColor
第五章 MapBasic开发环境
主过程定义
Sub Main Dim 语句 … End Sub
其它过程定义
Sub … Dim 语句 … End Sub
自定义函数
Function… Dim 语句 … End Function
过程的使用方法
过程的声明
主过程的声明
Declare Sub Main
Sub Main Note “Hello!” End Sub Declare Sub 过程名(参数)
在Function…End Function结构中的函数名 作为一个形式参数,在函数体中可以赋一个值 给函数名,它是返回给函数调用者的值。
以用户自定义函数的 方法完成求和功能
Declare Sub Main Declare Function sum (ByVal n As Integer) As Integer
End If
Else
counter=counter-1
End If
Do Case
Dim counter As Integer .. Do Case counter Case 1
Goto
Dim counter As Integer
…
If counter<0 Then Goto L1 End If … L1: … …
数组变量
定义 使用 Dim x(10) As Integer 数组名(元素号) x(5)=10
改变数组的大小
ReDim x(20) As Integer
注意:MapBasic只支持一维数组,下标从1开始
自定义数据类型
是一个或多个变量类型的集合,定义了一 个自定义数据类型,就可以声明这种这种类型 的变量。 定义方式
Dim temp,i As Integer temp=0 For i =1 To n temp=temp+ i
MFC控件
使用Windows标准控件我们在前面曾提到过,控件是一些行为标准化了的窗口,一般用于对话框或其它窗口中充当与用户交互的元素。
在Visual C++中,可以使用的控件分成三类:(1) Windows标准控件Windows标准控件由Windows操作系统提供,在Windows 95中还提供了一些新增的控件。
所有这些控件对象都是可编程的,我们可以使用Visual C++提供的对话框编辑器把它们添加到对话框中。
Microsoft基础类库(MFC)提供了封装这些控件的类,它们列于表6.1。
表6.1 Windows标准控件续表6.1前面提到过,在MFC中,类CWnd是所有窗口类的基类,很自然的,它也是所有控件类的基类。
Windows标准控件在以下环境下提供:∙Windows 95∙Windows NT 3.51及以后版本∙Win32s 1.3∙注意:∙Visual C++ 4.2及以后版本不再支持Win32s。
(2) ActiveX控件ActiveX控件可用于对话框中,也可用于HTML文档中。
这种控件过去被称为OLE 控件。
本书将在专门的章节中来讲述关于ActiveX控件的知识。
这里仅指出ActiveX控件使用了与标准控件完全不同的接口和实现方法。
(3) 其它MFC控件类除了Windows标准控件和自己编写的或者来自于第三方软件开发商的ActiveX 控件以外,MFC还提供了另外三种控件,它们由下面的三个类进行封装:∙类CBitmapButton用于创建以位图作为标签的按钮,位图按钮最多可以包括四个位图图片,分别代表按钮的四种不同状态。
∙类CCheckListBox用于创建选择列表框,这种列表框中的每一项前面有一个复选框,以决定该项是否被选中。
∙类CDragListBox用于创建一种特殊的列表框,这种列表框允许用户移动列表项。
在本章我们仅讲述第一类控件,即Windows标准控件。
所涉及的内容包括各个控件的使用及相应的技巧。
实验1 创建对话框应用程序及控件使用
实验1 创建对话框应用程序及控件使用一.实验目的1.掌握使用“MFC应用程序向导”创建对话框应用程序框架的方法2.掌握给对话框添加控件的方法,以及使用“MFC类向导”为控件通知消息映射消息处理函数的方法3.掌握使用“MFC类向导”为控件添加控件变量的方法4.掌握控件变量与控件的数据交换机制以及使用控件变量访问和控制控件的方法5.掌握对话框中添加自定义消息的方法二.实验内容1.创建一个Windows对话框应用程序,其界面要求实现以下功能:在下部的文本编辑框(Edit Control )中输入内容后,单击“添加”按钮,文本编辑框的内容被作为一个条目添加到上部的列表框(List Box)中2.为上一步创建的程序添加一条自定义消息,消息名为WM_MYMESSAGE,也可自己命名。
单击“添加”按钮时,将发送盖消息,该消息的处理函数将删除编辑框中已输入的所有内容。
三.实验步骤1.使用“MFC应用程序向导”创建一个对话框应用程序,项目名称编程者自己确定。
2.将主动生成的对话框中的静态文本控件和“取消”命令按钮删除,在窗口上部添加一个列表框(List Box)控件,在列表框中的静态文本控件和“取消命令按钮删除,在窗口上部添加一按钮左侧添加一个命令按钮(Button)控件.3.将“确定”按钮的caption属性修改为“退出”,新添加的命令按钮的caption属性修改为“添加”,修改对话框窗口的caption属性为“实验1”,调整各控件的大小和布局如上图所示。
4.为列表框控件添加一个控制变量,类别为control,变量名编程者自己确定,这里取名为m_list,为编辑框控件添加一个控制变量,类别为value,类型Cstring,变量名为m_Edit,也可由编程者自己确定。
5.为“添加”按钮添加并编写BN_CLICKED消息的消息处理函数,该函数代码如下:Void CShiyanDlg : : OnBnclickedButton1( ){//TODO:在此添加控件通知处理程序代码UpdateData(true); //将控件中的数据交换至控件变量If(!m_Edit . ISEmpty()) //如果编辑框内容不空,则将内容添加至列表框M_List . Addstring(m_Edit);}6.编译运行程序,在文本编辑框中输入内容并单击“按钮”,观察执行结果。
MFC控件使用详细教程
使用Windows标准控件我们在前面曾提到过,控件是一些行为标准化了的窗口,一般用于对话框或其它窗口中充当与用户交互的元素。
在Visual C++中,可以使用的控件分成三类:(1) Windows标准控件Windows标准控件由Windows操作系统提供,在Windows 95中还提供了一些新增的控件。
所有这些控件对象都是可编程的,我们可以使用Visual C++提供的对话框编辑器把它们添加到对话框中。
Microsoft基础类库(MFC)提供了封装这些控件的类,它们列于表6.1。
表6.1 Windows标准控件续表6.1前面提到过,在MFC中,类CWnd是所有窗口类的基类,很自然的,它也是所有控件类的基类。
Windows标准控件在以下环境下提供:•Windows 95•Windows NT 3.51及以后版本•Win32s 1.3•注意:•Visual C++ 4.2及以后版本不再支持Win32s。
(2) ActiveX控件ActiveX控件可用于对话框中,也可用于HTML文档中。
这种控件过去被称为OLE 控件。
本书将在专门的章节中来讲述关于ActiveX控件的知识。
这里仅指出ActiveX控件使用了与标准控件完全不同的接口和实现方法。
(3) 其它MFC控件类除了Windows标准控件和自己编写的或者来自于第三方软件开发商的ActiveX 控件以外,MFC还提供了另外三种控件,它们由下面的三个类进行封装:•类CBitmapButton用于创建以位图作为标签的按钮,位图按钮最多可以包括四个位图图片,分别代表按钮的四种不同状态。
•类CCheckListBox用于创建选择列表框,这种列表框中的每一项前面有一个复选框,以决定该项是否被选中。
•类CDragListBox用于创建一种特殊的列表框,这种列表框允许用户移动列表项。
在本章我们仅讲述第一类控件,即Windows标准控件。
所涉及的内容包括各个控件的使用及相应的技巧。
对话框及常用控件
统一的视觉风格
对话框的视觉风格应与应 用程序的整体风格保持一 致。
合适的色彩搭配
对话框的颜色搭配应符合 应用程序的主题和风格, 同时也要考虑色彩的对比 度和舒适度。
精美的图标和插图
对话框中可以适当地使用 图标和插图,以提高视觉 效果和用户体验。
一致性
对话框布局一致
不同对话框的布局和组件应保持一致,以提高用户对 应用程序的熟悉度和使用效率。
提示对话框
总结词
提供简短信息或警告的对话框
详细描述
提示对话框通常用于向用户显示应用程序的状态或提 供简短的通知。它包含一个标题、一条消息和一个关 闭按钮。根据需要,提示对话框还可以包含图标以强 调其重要性。
感谢观看
THANKS
按钮
总结词
用于触发特定功能的控件
详细描述
按钮是常见的交互控件,用户点击按钮后可以触发特定的功能或操作。根据功 能,按钮可分为确认、取消、提交等类型。
列表框
总结词
用于显示和选择列表项的控件
详细描述
列表框可以显示一系列的列表项,用户可以通过鼠标或键盘选择所需的列表项。根据选择方式,列表 框可分为单选列表框和多选列表框。
对话框的分类
模态对话框
模态对话框会阻塞用户对其他界面的 操作,直到对话框关闭。这类对话框 常用于需要用户做出决策或输入的情 况。
非模态对话框
非模态对话框不会阻塞用户对其他界 面的操作,用户可以在对话框打开的 同时进行其他操作。这类对话框常用 于显示信息或提供简单的选项。
对话框的使用场景
确认操作
01
复选框
总结词
用于表示选项是否被选中的控件
详细描述
复选框是一种开关控件,用户可以通过点击来选中或取消选中某个选项。多个复选框可 以组合在一起,表示多个选项的组合。Fra bibliotek单选按钮
对话框及控件
对 Student 程序,可在用户按添加菜单项/按钮时,弹出对话框,让用户输入学生的姓名 和成绩。具体操作如下: (1) 创建对话框资源 l 计 划 用 对 话框 编 辑 器 建 立 一 个 如 下 图 所 示 的 输 入 对话 框 资 源 : 在 项 目 工作 区 的 ResourceView 页中 Dialog 项上单击鼠标右键,在弹出菜单中选 Insert Dialog 项,VC 会 自动创建一个 ID 为 IDD_DIALOG1、标题为 Dialog、含 OK 与 Cancel 按钮的缺省对话 框,并打开对话框编辑器(包括对话框资源编辑窗口和控件工具栏窗口)
对话框的组成
资源和控件:
我们已经了解到,对话框实际上是一种窗口,那么它和我们已经见过的 CView 窗 口有什么不同呢?其中很重要的一个区别就在于, 对话框窗口几乎总是和 Windows 的资源
一起,这些资源标识了对话框中的元素,同时也指定了对话框的布局。由于我们可以用 资源编辑器来创建和编辑对话框资源,因此,我们可以以可视的方式迅速而有效地创建 对话框。对话框包含了一些被称为控件的元素,对话框控件包括编辑控件(即文本框)、 列表框、组合框、静态文本(即标签)、树状视图、进度指示器和滑块等等,这些对话框 的控件既可以通过 CWnd 的指针来引用(因为它们本身实际上就是窗口)。 控件通过向上级 对话框发送消息响应用户的动作,如输入了正文或按下了鼠标键等。对话框和控件有自 己相应的类,如对话框由 CDialog 类来管理,编辑框由 CEdit 类来管理。
对话框及控件
对话框(dialog box)是 GUI 的常用组件,也是其最复杂的组件,主要用于接收用户的各 种输入和选择,也可用于向用户显示信息。在对话框中可以包含文本框、编辑框、列表框、 组合框、按钮、单选钮、复选框等各种控件(control),供用户查看、输入和选择。 几乎所有的 Windows 应用程序都要借助于对话框窗口来和用户打交道,这种对话框可 以是简单的 OK 消息框, 也可以是较复杂的数据输入窗体。 对话框实际上是一个真正的窗口, 可以接受消息,而且还可以被移动和关闭,甚至可以在它的客户区中进行绘图操作。对话框 可分为“模式”和“无模式”两大类。 按工作方式不同,可将对话框分成两类: l 模式对话框(modal dialog box 模态对话框):在关闭模式对话框之前,程序不能进行其他 工作(如一般的“打开文件”对话框) l 无模式对话框(modeless dialog box 非模态对话框):模式对话框打开后,程序仍然能够 进行其他工作(如一般的“查找与替换”对话框)
对话框:为对话框添加控件
创建对话框资源需要创建对话框模板、修改对话框属性、为对话框添加各种控件等步骤,前面一讲中鸡啄米已经讲了创建对话框模板和修改对话框属性,本节继续讲如何为对话框添加控件。
上一讲中鸡啄米创建了一个名为“Addition”的工程,目的是生成一个实现加法运算的应用程序。
实现加法计算有几个必要的因素:被加数、加数、和。
被加数和加数需要输入,和需要输出显示。
那么这几个因素都需要相应的控件来输入或显示,下面鸡啄米就一步步讲解如何添加这些控件。
1.为对话框添加一个静态文本框(Static Text),用于显示字符串--“被加数”。
上一讲中生成的资源模板中自动添加了一个标题为“TODO:Place dialog controls her e.”的静态文本框,我们可以修改它的标题继续使用,也可以删掉它。
这里为了从头讲解静态文本框的添加过程,将它删掉,继续添加新的静态文本框。
删除控件时,可以使用鼠标左键点击选中它,选中后控件的周围会出现虚线框,然后按Delete键就可以将其删除了。
在“Addition”工程的Resource View中打开上一讲中创建的对话框模板IDD_ADDITION_DIALOG,自动添加的静态文本框就可以使用这种方法删除。
在添加新的静态文本框以前,先看看Toolbox视图是否显示了,如果没有显示,在菜单栏上点击View->Toolbox即可。
Toolbox视图如下图:Toolbox中列出了一些常用控件,其中有一个是Static Text,即是我们要添加的控件。
在Toolbox中的Static Text上点下鼠标左键不放开,并拖到IDD_ADDITION_DIALOG对话框模板上,模板上会出现一个虚线框,我们找到合适的位置松开鼠标左键放下它。
用鼠标左键选中控件后周围出现虚线框,然后鼠标移到虚线框上几个黑点的位置会变成双向箭头的形状,此时就可以按下鼠标左键并拖动来改变控件大小了。
我们可以这样改变新添加的静态文本框控件的大小,以更好的显示标题。
MFC 对话框和常用教程
第五章对话框和常用控件对话框是Windows应用程序中最重要的用户界面元素之一,是与用户交互的重要手段,在程序运行过程中,对话框可用于扑捉用户的输入信息或数据。
对话框是一个特殊类型的窗口,任何对窗口进行的操作(如:移动、最大化、最小化等)都可在对话框中实施,一般来说,在对话框中通过各种控件(如:按钮、编辑框、列表框、组合框等)来和用户进行交互。
控件是在系统内部定义的用于和用户交互的基本单元。
一、对话框的使用Visual C++提供的对话框编辑器能“可视”地进行设计、编辑,并可用ClassWizard为对话框从CDialog基类中派生一个类,MFC的CDialog类封装了用于对话框的显示、关闭等操作的许多功能函数,例如:DoModal函数用来显示模式对话框并返回用户操作的结果。
1、模式对话框(为186附加举例页)所谓模式对话框是指,当对话被弹出时,用户必须在对话框中进行相应的操作,在退出对话框之前,对话框所在的应用程序不能继续执行。
平常我们所见到的对话框大多是模式对话框。
例:模式对话框(通过菜单命令弹出)1)建一个单文档(SDI)应用程序2)创建对话框模板Insert→Resource→选中Dialog→单击New拖过一个静态文本,鼠标对准它,按右键点properties改标题为“新建模式对话框”。
3)鼠标右键对准对话框的任何位置单击,选择properties选项,设置ID为IDD_MYDIALOG 4)给对话框创建类双击新建对话框的任何位置,单击OK,写类名为“CMyDlg”,保证”CDialog”作为该类的基类。
5)创建菜单命令:a)打开资源编辑器的菜单项Menub)双击IDR_MAINFRAMEc)双击右边空白菜单,点开pop_up(让它是空白),在名字处写”弹出对话框(&A)”,ID 处写ID_PUPDIALOG6)将菜单命令连接到主框架程序中,完成ID_PUPDIALOG的消息映射:View→ClassWizard→保证Class name里是CMainFrame,在ObjectIDs里找到ID_PUPDIALOG点黑→Messages里(右边)点COMMAND建立主框架对象方法并加代码:void CMainFrame::OnPupdialog(){ CMyDlg MyDlg;MyDlg.DoModal(); //DoModal()是CDialog类成员函数,通过调用该//函数将显示对话框。
天正建筑8.0标准教程-第五章
第五章房间与屋顶一、房间面积的概念建筑各个的区域的面积计算、标注和报批是建筑设计中的一个必要环节,TArch8的房间对象用于表示不同的面积类型,房间描述一个由墙体、门窗、柱子围合而成的闭合区域,按房间对象所在的图层识别为不同的含义,包括有:房间面积、套内面积、建筑轮廓面积、洞口面积、公摊面积和其他面积,不同含义的房间使用不同的文字标识。
基本的文字标识是名称和编号,前者描述对象的功能,后者用来唯一区别不同的房间。
例如用于标识房间使用面积时,名称是房间名称“客厅”、“卧室”,编号不显示,但在标识套内面积时,名称是套型名称“1-A”,编号是户号“101”,可以选择显示编号用于房产面积配图。
房间面积是一系列符合房产测量规范和建筑设计规范统计规则的命令,按这些规范的不同计算方法,获得多种面积指标统计表格,分别用于房产部门的面积统计和设计审查报批,此外为创建用于渲染的室内三维模型,房间对象提供了一个三维地面的特性,开启该特性就可以获得三维楼板,一般建筑施工图不需要开启这个特性。
面积指标统计使用【搜索房间】、【套内面积】、【查询面积】、【公摊面积】和【面积统计】命令执行。
[房间面积]在房间内标注室内净面积即使用面积,阳台用外轮廓线按建筑设计规范标注一半面积;[套内面积]按照国家房屋测量规范的规定,标注由多个房间组成的住宅单元住宅,由分户墙以及外墙的中线所围成的面积。
[公摊面积]按照国家房屋测量规范的规定,套内面积以外,作为公共面积由本层各户分摊的面积,或者由全楼各层分摊的面积。
[建筑面积]整个建筑物的外墙皮构成的区域,可以用来表示本层的建筑总面积,可以按要求选择是否包括出墙面的柱子面积,注意此时建筑面积不包括阳台面积在内,在【面积统计】表格中最终获得的建筑总面积包括按《建筑工程面积计算规范》计算的阳台面积。
面积单位为米,标注的精度可以设置,并可提供图案填充。
房间夹点激活的时候还可以看到房间边界,可以通过夹点更改房间边界,房间面积自动更新。
对话框及其应用
示例2:dxan:dialog{
label="确定图纸幅面"; :boxed_radio_row{label="幅面规格"; :radio_button{label="A0"; key="a0"; } :radio_button{label="A1"; key="a1"; } :radio_button{label="A2"; key="a2"; } :radio_button{label="A3"; key="a3"; } :radio_button{label="A4"; key="a4"; } :radio_button{label="A5"; key="a5"; value=5;} } ok_cancel; }
续前: :edit_box{label="半径R(mm)="; mnemonic="R"; key="R";value=25;} ok_cancel; }
示例4:
示例4的显示结果:
示例5:
示例5的显示结果:
第六讲 对话框的程序驱动
能够编写对话框文件,仅仅是迈出了对 话框设计的第一步,事实上,编写对话 框文件比较容易,而要控制对话框,使 之实现应有的功能,就要下更大的功夫。 要显示编写的对话框并有效控制它,需 要结合AutoLISP编程。AutoLISP提供了 处理对话框的各种管理函数,利用它们 可以实现DCL文件的各种控制。
(action_tile “accept” “(done_dialog)”) (action_tile “cancel” “(setq a –1) (done_dialog)”)
第5章 常用控件
(2)将已选择的字段移动到左列表框中 Private Sub Command2_Click() If List2.ListCount = 0 Then MsgBox "列表中已没有可选的字段", , "注意" Exit Sub End If If List2.ListIndex >= 0 Then List1.AddItem List2.Text List2.RemoveItem List2.ListIndex Else MsgBox "请先在列表中选择某字段", , "注意" End If End Sub
Private Sub Command1_Click() If Option1.Value Then Text1.FontName = "宋体" Else Text1.FontName = "幼圆" End If If Option3.Value Then Text1.FontSize = 16 Else Text1.FontSize = 20 End If If Option5.Value Then Text1.ForeColor = RGB(0, 0, 255) Else Text1.ForeColor = RGB(255, 0, 0) End If End Sub
设置单选按钮或复选框和文本注释内容,即单选按钮或复选框边上的文本标题
(2)Alignment属性 0:控件按钮在左边,标题显示在右边,默认设置
1:控件按钮在右边,标题显示在左边。
(3)Value属性:默认属性,表示单选按钮或复选框的状态。 单选按钮 True:单选按钮被选定。 False:单选按钮未被选定,默认设置。 复选框 0-Unchecked:复选框未被选定,默认设置。 1-Checked:复选框被选定。 2-Grayed:复选框变成灰色,禁止用户选择。 (4)Style属性:指定单选按钮或复选框的显示方式,用于改善视 觉效果。 0-Standard:标准方式。1-Graphical:图形方式。 3、常用事件 单选按钮和复选框都能接收Click事件,但一般需要编 写事件过程,检测控件对象Value属性值,再根据检测 结果执行相应的处理
wzmu-xw-05常用控件
列表框(ListBox)显示项目列表,从其中可以选择一
项或多项。如果项目总数超过了可显示的项目数,就自动 添加滚动条。 缺省名为List1、List2…..,建议名称前缀为lst
1、主要属性
List: 字符型数组,存放列表框的项目。可通过下标访问
数组中的值( 下标是从0开始的)。格式如下
当按下左键拖动滑块进行移动时不断触发scrห้องสมุดไป่ตู้ll事件并改变键拖动滑行移动事件并改变value值而change事件只是在滚动结束之后即停止移动释放左键后才发生一次停止移动释放左键后才发生调色板调色板特别注意第一个与第二三个的不同55定时器timer定时器如果我们想让程序自动地做一些事情每隔一定时间的做一次一定不是连续不停地做能有规律地以interval为时间间隔激发定时器事件timer事件从而定时执行指定的工作
Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0 End If
End Sub
SetFocus:是设置控件获得焦点的方法,
对象名. SetFocus ‘
True: 单选钮被选定 False: 单选钮未被选定
缺省设置
复选框(整型值)
0--Unchecked:未被选定 1--Checked:选定 2--Grayed:灰色
常用事件Click
Value 在单击时自动改变状态,一般不需要在Click事 件过程中对Value属性进行赋值。★★★★★
例5-3 利用复选框进行字形设置:加粗、倾斜、加 下划线,文字用标签控件显示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北京林业大学信息学院
创建对话框---创建对话框模板
可以使用对话框编辑器来创建包含不同控件的对话 框模板,在对话框编辑器中,可以调整对话框显示时 的大小和位置,从Controls工具栏拖放各种类型的控 件到对话框中,用Dialog工具栏调整控件的位置,测 试对话框的外观和行为。
北京林业大学信息学院
实现步骤
(3) 对视图类进行编辑,以能激活对话框,并进 行绘图。
首先要使用ResourceView中的菜单编辑器来创建菜 单项“颜色设置”。
在创建了菜单项后,可通过ClassWizard为该菜单项 映射菜单消息。
在视图中需要生成一个该类的对象。记得包含头文件 在为菜单项颜色设置映射的消息中,写如下代码
控件
静态控件 静态控件 静态控件 编辑框 编辑框 编辑框
ID
Caption
IDC_STATIC1 R(0-255)
IDC_STATIC2 G(0-255)
IDC_STATIC3 B(0-255)
IDC_R
IDC_G
IDC_B
北京林业大学信息学院
实现步骤
(2) 使用ClassWizard创建对话框类CMyColorDialog 在ClassWisard中选取属性表Member Variables,为控
对话框模板定义了对话框的特性(比如大小、 位置和风格)以及对话框中每个控件的类型和 位置。 2、对话框类
从CDialog类派生的对话框类提供编程接口 来管理对话框 。
北京林业大学信息学院
对话框的分类
1、模式(Modal)对话框 在对话框关闭之前,用户无法在同一应用程
序的其他地方进行工作,例如打开文件对话框。 2、无模式(Modaless)对话框
件IDC_R、IDC_G和IDC_B分别映射int类型成员变量 m_nR、m_nG和m_nB。
在ClassWisard中选取属性表Message Maps,为 CMyColorDialog的消息WM_INITDIALOG映射函数 OnInitDialog(),并单击Edit Code按钮为OnInitDialog 函数编写初始化代码。
的控件。 (3) 指定控件和成员变量之间如何交换数据。 (4) 映射Windows消息到对话框类,如鼠标左键单击消息。 (5) 利用ClassWizard为对话框中的按钮和其他可以产生事件的
控件加入相应的消息控件函数。 (6) 为各种事件处理函数编辑代码,来够完成指定的工作。
北京林业大学信息学院
创建对话框--创建对话框类
对话框上的许多控件还需要进行初始化工作, 从而使得对话框被显示时这些控件具有相应类 型的初值。对话框的初始化工作可以使用以下 3种方法来进行。
(1) 在构造函数中初始化 (2) WM_CREATE初始化 (3) WM_INITDIALOG初始化 对于对话框的初始化工作通常都在响应该消 息时进行 。
北京林业大学信息学院
dlg.DoModal(); Invalidate();
北京林业大学信息学院
实现步骤
编辑视图类中的OnDraw,进行绘图
void CMyView::OnDraw(CDC* pDC) {
CMyDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); CRect rect; GetClientRect(rect); Cbrush brush; brush.CreateSolidBrush(RGB(dlg.m_nR,dlg.m_nG,dlg.m_nB)); pDC->SelectObject(&brush); pDC->Rectangle(100,100,200,300); }
北京林业大学信息学院
模式对话框编程
【例】 简单模式对话框的编程。 本程序的功能是在客户区显示一个可
由用户指定填充颜色的矩形。当菜单项 【颜色设置】被选中时将调出【颜色】 对话框,在其中用户可以确定RGB三颜 色的值,单击【确定】按钮后即可改变 矩形的填充色。
北京林业大学信息学院
实现步骤
程序的步骤如下。 (1) 使用对话框编辑器创建对话框模板,最终完成的对话 框界面如图所示。
模式对话框编程
对于模式对话框的编程可以按以下步骤进行。 (1) 根据要求创建对话框模板。 (2) 使用ClassWizard创建对话框类并进行各类
事件函数的代码编写。 (3) 对视图类进行编辑,以便对话框能够被激活。
在所编写的代码中,首先创建对话框类的对象, 然后通过该对象调用对话框类成员函数 DoModal()。 只 有 当 用 户 退 出 对 话 框 窗 口 时 , DoModal函数才能返回。
对话框和Windows标准控件
对话框的组成与分类 创建对话框 模式对话框的编程 通用对话框 Windows 标准控件 资源与资源编辑器 菜单的使用 工具栏的使用 状态栏的使用
北京林业大学信息学院
对话框的组成
对话框:是Windows应用程序与用户打交 道的界面元素 。 1、对话框模板
可以使用菜单方式:InsertResource打开Insert Resource对话框,选中Dialog后单击New按钮即可 打开对话框编辑器。或者使用项目的ResourceView, 找到Dialog资源,右击后选择Insert Dialog也可打 开对话框编辑器。
北京林业大学业大学信息学院
实现步骤
BOOL CMyColorDialog::OnInitDialog() {
CDialog::OnInitDialog(); m_nR=0; m_nG=0; m_nR=0; UpdateData(FALSE); //将设定的变量值传送给对应的控件 return TRUE; }
(a) 对话框模板 (c) Dialog工具栏
(b) Controls工具栏
北京林业大学信息学院
创建对话框---创建对话框类
在创建了对话框模板后,就可以利用ClassWisard来 创建从CDialog派生且连接到对话框模板的对话框类。
(1) 创建了一个连接到对话框模板CDialog类的派生类。 (2) 利用ClassWizard向对话框类加入数据成员来表示对话框中