窗体关闭判断

合集下载

word 试题

word 试题

一、单选题:(共40分,只能选一个答案)1. 当窗口非最大化时,用鼠标按住标题栏拖动,可以改变———。

A、窗体在屏幕上的位置B、窗体的大小C、窗口最大化D、窗口最小化2. Word 2003窗口标题栏右边的按纽不可能同时出现的是——-A、最大化和向下还原B、最小化和最大化C、最大化和关闭D、最小化和关闭3. Word 2003的菜单栏包含————项系统菜单。

A、6B、7C、8D、94. 如果将鼠标指针移到按纽上稍候片刻,工具按钮的下方就会显示——-A、关于该按纽名称或功能提示的文字B、没有任何显示C、只显示按纽名称D、只显示按纽功能5. 位于窗口的底部,显示当前窗体的状态,如当前的页号、节号、当前页和总页数、光标插入点的位置、改写/插入状态、当前使用的语言等信息的是————A、任务栏B、标题栏C、状态栏D、工具栏6. 关于Word 2003标尺,下列说法错误的是————。

A、标尺用来确定文档在屏幕及纸张上的位置B、不可以隐藏水平标尺和垂直标尺C、可以利用标尺上的制表符来设置指标位D、可以利用水平标尺上的缩进按纽进行段落缩进和页边距调整7. 下列方法不能退出 Word 2003的是——-。

A、单击Word窗口右上角的“关闭”按纽B、单击“文件”菜单里的“退出”命令C、单击窗口左上角的控制图标D、单击“文件”菜单里的“关闭”命令8. 退出Word 2003时,如果你正编辑文档没有保存,系统会弹出提醒用户保存的对话框,在对话框里选择“取消”则————。

A、保存文档,退出Word 应用程序B、不保存文档,退出Word 应用程序C、取消退出操作,返回文档编辑页面D、保存文档,但不退出Word 应用程序9. 在Word 2003 中,————快捷键可以迅速将插入点移动到文档开头。

A、Home B、Shift+Home C、Ctrl+Home D、Ctrl+End10. 鼠标移至页左选定栏双击可以选定————。

vb6 操作mdi子窗体的方法 -回复

vb6 操作mdi子窗体的方法 -回复

vb6 操作mdi子窗体的方法-回复VB6操作MDI子窗体的方法VB6是一种使用Visual Basic编程语言的集成开发环境。

作为一种早期的开发工具,VB6提供了一种方便的开发环境来创建Windows应用程序。

在VB6中,MDI(多文档界面)是一种常见的界面布局,它允许用户同时打开多个子窗体。

本文将介绍如何在VB6中操作MDI子窗体。

我们将逐步讲解以下内容:1. 理解MDI和MDI子窗体2. 创建MDI窗体和MDI子窗体3. 操作MDI子窗体的属性和方法4. 在MDI子窗体之间进行切换5. 关闭MDI子窗体现在,让我们一步一步地回答你对VB6操作MDI子窗体的疑问。

1. 理解MDI和MDI子窗体MDI是多文档界面的缩写。

在MDI界面中,有一个称为MDI窗体(Parent 窗体)的主窗体,该窗体可以容纳多个MDI子窗体。

MDI子窗体是在MDI窗体内打开的子窗体,通常用于显示和操作不同的文档或任务。

2. 创建MDI窗体和MDI子窗体创建MDI窗体和MDI子窗体非常简单。

首先,创建一个新的VB6项目,然后通过菜单栏上的“项目”选项来添加一个新的窗体。

选择窗体模板“MDI窗体”,然后点击“确定”。

现在,你已经创建了一个MDI窗体。

接下来,我们将创建一个MDI子窗体。

在“工具箱”中,选择“窗体”控件,然后在MDI窗体内单击并拖动,以创建一个新的MDI子窗体。

3. 操作MDI子窗体的属性和方法在VB6中,你可以通过设置MDI子窗体的属性和使用相关方法来操作它。

以下是一些常用的属性和方法:- Caption: 设置或获取MDI子窗体的标题。

- Visible: 设置或获取MDI子窗体的可见性。

- Width/Height: 设置或获取MDI子窗体的宽度和高度。

- Left/Top: 设置或获取MDI子窗体的左边距和上边距。

- Activate: 将焦点切换到指定的MDI子窗体。

这些属性和方法可以在代码中通过窗体的名称来调用。

[delphi]delphi线程的终止和退出

[delphi]delphi线程的终止和退出

在Delphi中使用线程,当窗体关闭时,‎如果窗体中启用了线程,一般需要手动关闭,‎以释放资源。

常用来结束线程的代码为:‎PcmThrd.Ter‎m inate;PcmT‎h rd.WaitFor;即先触发Ter‎m inate方法,然后等待线程的结束。

‎这种方法要求线程不能使用 FreeOnT‎e rminate := True; ,否‎则在WaitFor即将结束的时候会引发“‎无效句柄”的错误。

这种方法在窗体关闭的‎时候会等待一段事件(因为WaitFor)‎。

因此,如果不是在主窗体中结束线程‎时,其实我们可以不必使用WaitFor。

‎而是采用如下方法:将FreeOnTer‎m inate := True;这样在窗‎体关闭的代码中直接调用‎P cmThrd.Terminate;即‎可。

注意:如果设置了Pcm‎T hrd.OnTerminate := ‎S omeFunction;那么在调用P‎c mThrd.Terminate;前尽量‎将PcmThrd.OnTerminate‎:= nil,以免结束线程后SomeF‎u nction中的变量出现空指针错误。

当‎然,这不是绝对的,需要根据具体程序而定‎DELPHI 线程的终止和退出‎1)自动退出:一个线程从exec‎u te()过程中退出,即意味着线程的终止‎,此时将调用windows的exitth‎r ead()函数来清除线程所占用的堆栈。

‎如果线程对象的freeonte‎r minate 属性设为true,则线程‎对象将自动删除,并释放线程所占用的资源。

‎这是消除线程对象最简单的办法。

‎2)受控退出:利用线程对象‎的terminate属性,可以由进程或者‎由其他线程控制线程的退出。

只需要简单的调‎用该线程的terminate方法,并设直‎线程对象的terminate属性为tru‎e。

在线程中,应该不断监视ter‎m inate的值,一旦发现为true,则‎退出,例如在execute()过程中可以‎这样写:while not t‎e rminated dob‎e gin......‎..end;‎3)退出的api 函数:‎关于线程退出的api 函数声明如下‎:codefunction t‎e rminatethread(hthre‎a d:thandle;dwexitcod‎e:dword);不过,这个函‎数会使代码立刻终止,而不管程序中有没有‎try....fin‎a lly机制,可能会导致错误‎,不到万不得已,最好不要使用。

数据库应用基础综合复习题(二)

数据库应用基础综合复习题(二)

数据库应用基础综合复习题(二)数据库应用基础综合复习题(二)一、填空题1、表操作共有三种视图,分别是__________________、______________、________________。

2、在_____________视图中,不能修改字段的属性。

3、窗体可以用于显示表和查询中的数据,输入数据和修改数据,但不可以________________。

窗体的______________属性是数据输入、允许编辑和排序依据。

4、查询的类型可分为_________查询、___________查询、_____________查询、___________查询和_____________查询。

5、窗体由多个部分组成,每个部分称为一个“节”;在Access 2010中,窗体的类型分为六种,分别是____________窗体、____________窗体、____________窗体(显示数据最多)、____________窗体、____________窗体、____________窗体(交换式窗体)。

6、Access 2010中,“报表向导”分为__________、__________、和__________三种布局。

7、Access 2010所设计的___________是一个独立的外部文件。

8、________是一个或多个操作组成的集合;建立自定义菜单栏不属于VBA可以实现的操作。

9、VBA的自动运行宏,必须命名为_______________;使用宏组的目的是对多个宏进行组织和管理。

10、如果希望按满足指定条件执行宏中的一个或多个操作,这类宏称为条件操作宏。

常用宏操作包括打开窗体__________、打开报表__________、打开查询__________、用于关闭数据库对象__________。

11、VBA的三种流程控制结构是__________、__________、和__________。

常用窗体控件的使用

常用窗体控件的使用
14
(8)BackColor: 用来获取或设置控件的背景色。 (9)Font:
用来获取或设置控件的字体,包括字体名称、字号以
及是否以斜体、加粗和下划线显示。 (10)Locked: 确定是否可以移动控件或者调整控件的大小。 (11)TabIndex: 用来获取或设置控件的Tab键顺序。
15
(12)TextAlign: 用来确定文本对齐方式。
27
属性 ReadOnly
说明 文本框中的文本为只读
可在文本框中输入的最大字符数,默认值为最大 值,即32767个字符。 注意:由于使用的是Unicode字符,所以对中文和 英文的字符计数方法是相同的,即一个英文字符 的长度为1,一个汉字的长度也是1。 表示是否可在文本框中输入多行文本 用于屏蔽在单行文本框控件中输入的的密码字符。 注意:TextBox还有一个[UseSystemPasswordChar] 属性,若该属性为true,则无论在[PasswordChar] 属性中指定了哪一个字符,最终在TextBox中的文 本只能以系统默认的“*”来显示。
Visual C# 程序设计
常见窗体控件的使用
1
本章中我们将主要介绍以下内容: windows窗体 标签 按钮 文本框 单选按钮 复选按钮 列表框 组合框 ToolTip控件 PictureBox控件
2
利用C#编写GUI(Graphics User Interface)应用 程序的一般步骤: (1)建立“Windows应用程序”项目 (2)设计应用程序界面
10
模式对话框和非模式对话框
对话框可以分为模式对话框和非模式对话框两种。 模式对话框是指用户只能在当前的对话框窗体进行 操作,在该窗体关闭之前不能切换到程序的其他窗体, 通过窗体的ShowDialog()方法显示。 非模式对话框是指当前所操作的对话框窗体可以与 程序的其他窗体切换,通过窗体的Show()方法显示。

窗体的知识点

窗体的知识点

一、窗体的作用:窗体是应用程序和用户之间的接口,使数据的输入、修改和查看变得直观、容易。

二、窗体的类型:纵栏式窗体、表格式窗体、数据表窗体、主/子窗体、图表窗体、数据透视表窗体、数据透视图窗体。

三、窗体的视图:“设计”视图、“窗体”视图、“数据表”视图。

四、创建窗体的主要方式有:自动创建、窗体向导、设计视图五、窗体的组成:主体、窗体页眉、页面页眉、页面页脚、窗体页脚。

六、窗体的类型:纵栏式窗体、表格式窗体、数据表窗体、主/子窗体、图表窗体、数据透视表窗体、数据透视图窗体。

七、窗口的控件1.“文本框”控件文本框是一种交互式控件,用来输入或编辑数据,分为绑定型、未绑定型、计算型三种。

2.“标签”控件标签主要用来显示说明性文本,没有数据来源。

可以附加到其他控件上,也可以单独创建。

3.“选项组”控件选项组与复选框、选项按钮、切换按钮搭配使用,显示一组可选值。

可以利用向导来创建,或直接在设计视图中创建。

4.“列表框”控件列表框提供一列或多列数据给用户,只能直接选择而不能键入,分为绑定型、未绑定型两种。

可以通过向导创建,或直接创建。

5.“组合框”控件组合框具有列表框和文本框的特性,既可以选择也可以键入。

分为绑定型、未绑定型两种。

可以通过向导也可以直接创建。

6.“命令按钮”控件在窗体中可以使用命令按钮来执行某些操作,如确定、取消、关闭等等,这些操作可以是一个过程,也可以是一个宏。

八、窗体的属性1.常用的格式属性:标题、字体、名称、字号、字体粗细、前景色、背景色、特殊效果。

2.窗体的“格式”属性设置:默认视图、滚动条、记录选择器、导航按钮、分隔线、自动居中、控制框、最大最小化按钮、关闭按钮、边框样式。

3.常用的数据属性:控件来源:告诉系统如何检索或保存在窗体中要显示的数据。

输入掩码:设定控件的输入格式,仅对文本型或日期型数据有效。

有效性规则:用于设定在控件中输入数据的合法性检查表达式。

操作时学生可以利用生成器向导来建立合法性检查表达式。

有关form的琐碎:free,hide,close

有关form的琐碎:free,hide,close

FormDestroy 和 FormClose 区别和联系:
(1).窗口的所有资源真正释放时调用 FormDestroy。当你关闭窗口时,VCL会调用FormClose,如果你在FormClose里写Action = caFree,那么VCL会继续调用FormDestroy;如果你将Action的值赋为其它任何值,VCL不会真正释放窗口资源(如果Action=caNone则什么事都不做,窗口保持原状),这时就不会调用 FormDestroy 。
Create是从继承下来的方法,作用是给对象实例分配内存,语法为:Formname:=Tformname.Create(Application); //参数Application表示此窗体的拥有者为Application。
Show是显示已经创建的窗口。语法为: Formname.Show;
if Self=Form1 then
Form1 := nil;
用这个方法来防止别的程序对Form1的无意错误引用。
另外:Show是无模式显示窗体,ShowModal是模式显示窗体。
创建form的顺序:
1.formcreate
2.formactive
3.formshow
implementation分割代码的作用域。implementation防止外部引用单元涉及,任意单元如果访问该单元,只能引用该单元的interface节,对于implementation内声明但没有在interface中声明的函数或过程,其他引用该单元的单元都不能调用,同样,implementation内声明的变量,只能在该单元内被使用。
不要在方法或事件中直接引用Form1这类全局实例变量,如果别人用下列方法创建窗体,用Form1变量就没有作用了:

VB基本控件的属性

VB基本控件的属性

VB基本控件的属性,方法经及事件所有控件都具有的属性:1、Name: 表示在代码中用来标识一个控件的名字。

2、Enabled: 表示一个控件是否可以响应一个事件,即该控件可不可用。

值为true: 可以响应;值为false: 不可以看见。

3、Visible: 表示一个控件是否可见。

值为true:可以看见;值为false: 不可以看见。

所有控件都有具有的事件:1、KeyDown : 当用户按下键盘上一个键时发生的。

2、KeyUp : 在用户松开键盘上按下的键时发生的。

3、KeyPress : 在Key Down和Key Up事件之间发生。

4、MouseDown : 在鼠标被按下时触发的。

5、MouseUp :在用户松开鼠标键时发生的。

6、Click :在用户单击鼠标左键时发生的。

7、DblClick :在用户双击鼠标时发生的。

一、窗体(Form)属性:1、Caption: 表示窗体标题栏的文字。

2、BorderStyle: 一般情况下为默认值,若更改为下列值:1)值为0:没有窗体标题栏2)值为1:窗体运行之后不能改变大小3、WindowState: 设置窗体的大小。

3)值为0:窗体正常大小4)值为1:窗体最小化值为2:窗体最大化4、BackColor: 表示窗体的背景颜色事件:1、Initialize(初始化事件): 在窗体加载和显示之前触发,这个事件只触一次。

2、Load(加载事件): 用来完成窗体显示之前需要完成的动作。

3、Activate/Deactivate (激活/非激活事件):是用户在同一个应用程序的两个或多个窗体之间移动时触发的。

4、QueryUnload(条件卸载事件): 决定窗体是如何关闭的。

触发QueryUnload事件时Unload 的参数和因素有:1)Vb FormControlMenu值为0 :选中窗体控件菜单中的Close命令。

2)Vb FormCode值为1 :从代码中调用Unload 语句。

powerbuilder的各类操作

powerbuilder的各类操作

powerbuilder的各类操作1.关闭Form窗体:Close(Parent);2.打开Form窗体:Open(w_main);3.Form窗体分类:1)Main(主窗口)主窗口是窗口对象的标准类型.它可以覆盖其他窗口,也可以被其他窗口所覆盖.主窗口是一种独立的窗口,不依赖于其他任何窗口,即其可以单独打开和关闭.主窗口一般用于应用程序的主界面,或者MDI应用程序的工作表窗口.当创建一个新窗口时,其缺省的窗口类型即为主窗口.2)Child(子窗口)子窗口不能独立存在,必须从作为其父窗口的主窗口或弹出式窗口中打开,打开的位置相对于其父窗口而不是整个屏幕.子窗口仅可以在其父窗口内移动,当其一部分移出父窗口时,不显示该部分.3)MDI Frame(多文档界面框架窗口)4)MDI Frame with MicroHelp(带微帮助的多文档界面框架窗口)5)Popup(弹出式窗口)弹出式窗口从其父窗口或应用程序的Open事件中打开,并随父窗口关闭.弹出式窗口可以移到其父窗口的外面,但不能被父窗口覆盖.6)Response(响应式窗口)响应式窗口由其父窗口激活,一般要求用户输入信息.当其打开时,成为活动窗口.此时只有用户响应后方可关闭.否则不能切换到应用程序的其他窗口.4.数据窗口的使用:在窗体的Open事件中加入:connect;dw_1.settransobject(sqlca)dw_1.retrieve()注:1)connect;该行语句表示使用PB缺省的对象SQLCA连接数据库.2)dw_1.settransobject(sqlca)该行语句为dw_1数据控件指明数据窗口对象,应当从SQLCA事物对象中获取数据库的有关信息.3)dw_1.retrieve()该行语句指定数据窗口对象要获取数据,应当执行创建数据窗口对象时所定义的SELECT语句.5.在定义数据控件中的SELECT语句时,在WHERE中用到参数时:(步骤如下)1)在主窗口的"Design"下拉菜单中选择"Retrieval Arguments"选项,显示"Specify Retrival Arguments"对话框;2)在WHERE子句中使用上面定义的获取参数获取特定的记录,定义WHERE子句的步骤如:一.激活WHERE子句窗口;二.在Value项中输入参数名.注意在该参数前必须有一个":".冒号表明这是一个变量,可以在SQL语句中使用.三.在程序运行时,可对该参数动态赋值:connect;dw_1.settransobject(sqlca);dw_1.retrieve(参数名);6.数据控件的增删改查基本操作:1)增加记录:dw_1.Reset();//清除数据窗口dw_1dw_1.InsertRow(0);//在数据窗口中添加新的一行记录2)删除记录:dw_1.DeleteRow(0);//删除当前行3)更新记录:if dw_1.update()=1 thenCOMMIT;ElseROLLBACK;End if7.菜单编项中关闭:Close(ParentWindow);8.创建应用程序的可执行文件:(步骤)1)单击主窗口中工具栏的"NEW"按钮,打开"NEW"对话框,选择其中的"Project"(工程)选项卡.2)选择"Application"图标,单击"OK"按钮,打开"Project"画板.3)在"Executable File Name:"编辑框中键入可执行文件的名称,或者单击该编辑框右边的浏览按钮,选择保存可执行文件的路径.4)选择"Prompt For Overwrite"复选框和"Machine Code" 复选框.5)单击主窗口工具栏的"Build"(创建)按钮,或者选择"Design"菜单中的"Build Project"选项,创建可执行文件.9.游标的使用:string id,name//定义变量DECLARE idAndName CURSOR FOR//声明游标SELECT DISTINCT id,namefrom userORDER BY id asc;OPEN idAndName;//打开游标do//循环取值fetch idAndName into:id,:name;lb_1.additem(trim(id)+"|"+trim(name))loop while sqlca.sqlcode=0;close idAndName;10.子数据控件的运行:datawindowchild dw_child//定义子数据窗口dw_1.getchild("dw_1",dw_child)//获取子数据窗口connect;dw_child.settransobject(sqlca)//运行子数据窗口dw_child.retrieve(参数列表)11.数据控件中控件的赋值:dw_1.object.t_1.text="您好"//给数据控件中标签赋值12.显示打印机选项:printsetup()13.事务对象:是一个不可视的对象,驻留在内存中.事务对象包含了与数据库连接所必需的相关属性参数.在操纵数据库时,填写连接时所需的信息到该对象中,才可工作.当操作结束后,显示其返回值.1)缺省事务对象SQLCA:SQLCA(SQL Communication Area)即SQL通信区.SQLCA是不全局变量,可以在应用程序的任何事件中使用.应用程序开始运行时,SQLCA被自动创建.如果只用到一个事务对象,则可直接使用SQLCA.如果连接多个数据库,则需创建自己的事务对象.创建事务对象:Transaction First_transFirst_trans=Create Transaction注:使用事务对象后,应在脚本中删除该对象.Destroy First_trans但:不必删除SQLCA对象,因为它是PB自动完成的.2)事务对象的属性:其属性共有15项,可分为两组,第1组用于设置数据库连接参数,包括DBMS,连接的数据库,服务器名等;第2组用于返回给用户的信息,如有关数据库的状态,执行命令等.第1组属性中:一.AutoCommit:布尔值,用于指定是否自动提交(Commit).当该值为True时,则每次操作数据库后自动提交,其缺省值为False.二.Database:字符串型,当前事务对象所连接的数据库名.三.DBMS:字符串型,当前PB所使用的数据库管理系统名,如Oracle,Sybase等.四.DBParm:字符串型,DBMS所需的特定的连接参数.五.DBPass:字符串型,连接数据库时所需的口令.六.Lock:字符串型,数据库的隔离级别.七.LogID:字符串型,用户登陆到数据库服务器的用户ID.八.LogPass:字符串型,用户登录到数据库服务器所需的口令.九.ServerName:字符串型,数据库服务器名.十.UserID:字符串型,连接到数据库所需的用户名.第2组为返回信息参数,其中:一.SQLCode:长整型,返回用于判断SQL命令是否执行成功的代码:0:表示操作成功.-1:表示操作失败.100:表示没有出错,但未检索到可用数据.二.SQLRows:长整型,返回受前面的SQL命令影响的行数.三.SQLDBCode:长整型,返回数据库连接的错误代码.不同的DBMS返回的代码不同.四.SQLErrText:字符串型,返回数据库连接的错误信息,该信息与SQLDBCode错误码相对应.五.SQLReturnData:字符串型,返回DBMS指定的其他信息.3)设置属性:一.人工设置:SQLCA.DBMS="ODBC"SQLCA.Database="MyDB"SQLCA.LogID="HCS"SQLCA.LogPass="MyPassWord"SQLCA.ServerName="Sea"SQLCA.AutoCommit=False二.使用函数设置:可以使用ProfileString()函数从系统的.INI文件中提取有关属性信息,将其赋值给事务对象.ProfileString()函数的语法规则如下:ProfileString(file,section,key,default)其中:file:指定文件名.section:指定文件中某一节.key:相应节的变量.default:当所取值为空时,将该缺省值赋给相应的事务对象.在PB.INI文件中的Database节中保存了上次应用程序与数据库连接时的连接属性.下例从PB.INI文件中读取应用程序在上次数据库连接时所用的事务对象属性值.SQLCA.DBMS=ProfileString("PB.INI","Database","DBMS","") SQLCA.Database=ProfileString("PB.INI","Database","Databas e","")SQLCA.LogID=ProfileString("PB.INI","Database","LogID","")SQLCA.LogPass=ProfileString("PB.INI","Database","LogPass", "")SQLCA.ServerName=ProfileString("PB.INI","Database","Serv erName","")/doc/6c15778729.html,erID=ProfileString(" PB.INI","Database","UserId","")SQLCA.DBPass=ProfileString("PB.INI","Database","DBPass"," ")SQLCA.Lock=ProfileString("PB.INI","Database","Lock","")SQLCA.DbParm=ProfileString("PB.INI","Database","DbParm", "")14.连接数据库:1)建立连接:连接数据库使用内嵌的SQL的CONNECT命令,其语法格式为:connect(using TransactionObject);因为CONNECT是SQL语句,所以在其结尾处要加一个分号,以示区别.参数"USING TranscationObject"是可选项,如果未指定使用的事务对象,PB认为使用的是缺省的事务对象SQLCA.一般情况下,即使使用SQLCA事务对象,也应该在脚本中使用USING子句,以便于阅读.如:CONNECT USING SQLCAT该语句连接数据库,如下语句通过SQLCA的返回参数SQLCode的值判断连接是否成功.如果返回小于0,则为失败,并显示错误信息,然后使用Halt命令停止程序执行.If SQLCA.SQLCode<0 thenMessageBox("Fail","Can`t Connect Database.")HaltEnd if2)断开连接:在访问数据库任务结束以后,应及时断开与数据库的连接,为此使用如下SQL语句:Disconnect Using SQLCA;if SQLCA.SQLCode<0 thenMessageBox("Fail","Can`t Disconnect Database")HaltEnd if3)分配事务对象:创建事务对象并与数据库连接之后,要使数据窗口控件可以访问数据库,还应当将该事务对象分配给数据窗口控件,为此使用SetTransObject函数,该函数的调用格式为:dw_1.SetTransObject(Transaction)其中:dw_1:数据窗口控件名.Transaction:缺省或用户定义的事务对象名.该函数返回一个整型值,若调用成功,则返回1;若调用失败,则返回-1.例:Integer Tr_1Tr_1=dw_1.SetTransObject(SQLCA)15.缓冲区和可编辑控件函数1)缓冲区一.Primary Buffer(主缓冲区)保存显示在数据窗口控件中的所有数据行以及数据行和各个列的状态信息.当调用数据检索函数Retrieve()检索数据时,检索到的数据保存在Primary Buffer中.当插入数据时,插入的数据也保存在其中.二.Delete Buffer(删除缓冲区)保存被删除的数据行.当调用DeleteRow()函数删除数据行时,被删除的数据行Primary Buffer 保存到Delete Buffer.三.Filter Buffer(过滤缓冲区)Filter Buffer用于保存被过滤的数据行.执行数据过滤命令后,被过滤掉的数据行保存到Filter Buffer中.四.Original Buffer(原始缓冲区)保存数据窗口从数据库中检查的原始数据.在应用程序中可以调用数据窗口控件函数访问指定的缓冲区.调用如下语句可以引用Delete Buffer:String del_sexdel_sex=dw_1.GetItem(8,"sex",Delete!)执行上述语句后,从Delete Buffer中提取第8行数据的Sex列的内容,将其赋值给定符串变量del_sex.16.数据窗品控件可编辑控件的一些函数:1)GetText()获取可编辑控件中的数据.2)AcceptText()在数据窗口控件的LoseFocus事件中使用,其功能是检验可编辑控件中的文本数据后存入当前缓冲区.3)SetText()设置当前可编辑控件中的文本.17.数据窗口控件的一些函数1)Retrieve()函数从数据库中检索数据并将其保存到数据窗口控件中显示,其调用格式如下:dw_1.Retrieve({,参数1,参数2...})Retrieve()函数常用于在连接数据库之后检索数据库中的数据,并将其显示在数据窗口中.例:... ...If SQLCA.SQLCode<0 thenMessageBox("失败","无法连接数据库")HaltEnd ifInteger retri_1retri_1=dw_1.SetTransObject(SQLCA)dw_1.Retrieve()如果调用Retrieve()函数成功,则返回检索显示的记录行数,即主缓冲区中的数据行数;否则返回值为-1.2)Update()函数将数据窗口控件中数据的变化保存到数据库中,调用格式如下:dw_1.Update({accept{,resetflag}})其中参数accept是一个布尔值型的值.当取值为True时,表示在执行数据库更新之前调用函数AcceptT ext().参数resetflag也是布尔型的值.确定更新数据库操作后是否自动重置编辑状态标记.如果该函数调用成功,则返回值为1;否则返回值为-1.例:integer upda_1upda_1=dw_1.Update()If upda_1=1 thenCOMMIT;ELSEMessageBox("出现错误","无法保存数据库")ROLLBACK;End if在上例中,首先调用Update()函数,然后检查其返回值.若返回值为1,则表示该函数调用成功,进一步调用COMMIT命令执行数据库的更新操作;否则执行ROLLBACK命令,取消Update()函数的结果,并显示错误信息,通知用户.由于COMMIT和ROLLBACK命令都是SQL命令,所以在执行后还可以通过检查SQLCode的值判断是否执行成功.3)InsertRow()函数在数据窗口的主缓冲区中插入一行空记录,格式如下:dw_1.InsertRow(row)其中参数row表示插入行前面一行的行号.当row的值为0时,则在数据窗口的最后一行插入一行空记录.例:dw_1.InsertRow(5)表示在数据窗口的第6行插入一空行记录.4)DeleteRow()函数在数据窗口的主缓冲区中删除一行记录,并将该行记录移到删除缓冲区中.调用Update()函数之后,被删除的行才从数据库中实际删除.格式如下:dw_1.DeleteRow(row)参数row表示删除行的行号,为0时,表示要删除当前行.例:dw_1.DeleteRow(3)表示在数据窗口中删除第3行.5)ScrolltoRow()函数将当前行改变到参数row指定的行号.格式:dw_1.ScrolltoRow(row)例:dw_1.ScrolltoRow(7)将数据窗口的当前行改变到第7行.6)GetRow()函数返回当前行号,格式:dw_1.GetRow()7)GetColumn()函数返回当前列号,格式:dw_1.GetColumn()8)GetItem()函数从指定的行,列中提取数据.对于行,列不同数据类型,都有一个相应类型的GetItem()函数完成相应的功能,如GetItemDate(),GetItemnumber(),GetItemString()等.以GetItemDate()函数为例,其格式:dw_1.GetItemDate(row,column)其中参数row,column分别为行,列号,也可以为行,列名的字符串.如:String txlu_nameNumber txlu_numbertxlu_name=GetItemString(8,"Name")txlu_number=GetItemNumber(4,"Number")9)SetItem()函数为数据窗口中指定的行,列的字段赋值,格式:dw_1.SetItem(row,column,value)其中参数row,column分别为行,列号,也可以为行,列的字符串.10)SetSort()函数与Sort()函数排序当前数据窗口中的数据,前者用于指定排序的列及排序标准,而后者执行排序操作.SetSort()函数的格式:dw_1.SetSort(format)其中参数format是用于表示排序标准的字符串,它可以引用列名和排序标准.列名必须放在单引号内,而排序标准用字母A和D表示,其中A表示升序,D表示降序.例:dw_1.SetSort("'txlu_id'A")dw_1.Sort()11)SetFilter()函数与Filter()函数过滤数据窗口的数据,前一个函数用于指定过滤标准,而后一个函数执行过滤操作.SetFilter()函数的格式:dw_1.SetFilter(format)其中参数format用于指定过滤条件表达式,例:dw_1.SetFilter("emp_number>45 or emp_sex='F'")dw_1.Filter()上述代码过滤出编号大于45,以及性别为女的人员.。

Winform判断窗体程序需要判断窗体是由代码关闭还是通过点击右上角上X号关闭

Winform判断窗体程序需要判断窗体是由代码关闭还是通过点击右上角上X号关闭

Winform判断窗体程序需要判断窗体是由代码关闭还是通过点击右上角上X号关闭程序需要判断窗体是由代码关闭还是通过点击右上角上X号关闭FormCloseing事件中e.CloseReason可以获取关闭原因CloseReason枚举如下:None 关闭原因未定义或未能确定WindowsShutDown操作系统正在关闭所有应用程序以便准备关机MdiFormClosing此多文档界面(UI)窗体的父窗体正在关闭userClosing 用户正在通过用户界面(UI)关闭该窗体,例如通过单击窗体“X”关闭按钮,通过调用this.Close(),或通过Alt+F4等方式关闭。

TaskManagerClosing Windows任务管理器正在关闭程序FormOwnerClosing 所有者窗体正在关闭ApplicatonExitCall Applicaton类的Exit方法被调用。

this.close和点击“X”按钮的CloseReason是一样的,现在要区分this.close和点击“X”号怎么办呢?使用消息,代码如下:protected override void WndProc(ref Message msg){const int WM_SYSCOMMAND = 0x0112;const int SC_CLOSE = 0xF060;if (msg.Msg == WM_SYSCOMMAND && ((int)msg.WParam == SC_CLOSE)){// 点击winform右上关闭按钮// 加入想要的逻辑处理Application.Exit();}base.WndProc(ref msg); }。

WebBrowser控件应用:弹出新窗体和关闭窗口

WebBrowser控件应用:弹出新窗体和关闭窗口

WebBrowser控件应用:弹出新窗体和关闭窗口WebBrowser控件应用:弹出新窗体和关闭窗口Posted on 2007-04-14 18:50 江湖再见阅读(29873) 评论(10) 编辑收藏缘起:上次写了一个《WebBrowser控件的简单应用2》,提到了在NewWindow事件中打开新窗口的例子。

有网友“队长”提出那个事件得到的参数是本页面的,而不是新页面的,经过测试,果然url参数不是新页面的。

Open新页面要处理的:1:&lt;&lt;a href=’xxxxx’ target=’_blank’&gt;&gt;;2: onclick=’window.open’ ;3:引用js文件;4:ClientScript.RegisterStartupScript();等。

5:还有要实现在打开的页面里能用window.opener对象Close要处理的:1:onclick=’window.close ;2:引用js文件;3:ClientScript.RegisterStartupScript()等。

经过在网上搜索,结果并不令人满意。

基本上,WebBrowser 控件不提供这个(将要打开的新页面的地址)功能,只能通过其他方法。

这里介绍一下网上的一个简单的解决方案、我的一个简单方案、微软的回答、一个终极解决方法。

网上现在有人给出这样的一个解决方案:在_NewWindow事件通过wb_Container.StatusText来获得当前将要打开的页面。

代码可以这样写:private void wb_Container_NewWindow(object sender, CancelEventArgs e){e.Cancel = true;string newURL = wb_Container.StatusText;//'open}我测试了一下,这样做基本上只能处理&lt;a href=’xxxxx’ target=’_blank’&gt;的这种情况。

计算机试题(十四)

计算机试题(十四)

计算机试题(十四)一、单项选择题。

1.把硬盘上的数据传送到计算机内存中去的操作称为()A.读盘B。

写盘C。

输出D。

存盘2.计算机指令一般包括()A.数据与指令B。

操作码与地址码C。

区位码与国际码D。

编译码与操作码3.386和486微机被叫做32位计算机,这是指()A.每个字节含32位二进制数B。

一次可并行处理32位二进制数C.内存的每个存储单元为32位二进制数D。

它们只能运行用32位指令编写的程序4.通常人们说“486”微机,其中486的含义是()A.内存的容量B。

CPU的档次C。

硬盘的容量D。

显示器的档次5.“奔腾”(Pentium)微处理器是()位的微处理器。

A.16 B。

32 C。

64 D。

1286.“32位微机”中的32位指的是()A.微机型号B。

机器字长C。

内存容量D。

存储单位7.若一台微机地址总线的位长为10位,则其最大的寻址空间为()字节。

A.2048 B。

1024 C。

512 D。

1288.为了允许不同用户的文件具有相同的文件名,通常在指定文件时使用()来唯一地指定文件。

A.重名翻译B。

多级目录C。

约定D。

路径9.在同一张磁盘上()A.允许同一个文件夹的两个文件同名,也允许不同文件夹中的两个文件同名。

B。

不允许同一个文件夹的两个文件同名,也不允许不同文件夹中的两个文件同名。

C.允许同一个文件夹的两个文件同名,但不允许不同文件夹中的两个文件同名。

D.不允许同一个文件夹的两个文件同名,但允许不同文件夹中的两个文件同名。

10.在“资源管理器”窗口中选定文件或文件夹后,若想将它们立即删除,而不是放到“回收站”中,正确的操作是()A.按DEL键B。

按SHIFT+DEL键C。

按CTRL+DEL键D。

选择“文件”菜单中的“删除”命令11.在WINDOWS中,如果一个窗口被最小化,此时前台运行其他程序,则()A.被最小化的窗口与之相对应的程序撤除内存B.被最小化的窗口与之相对应的程序继续占用内存C.被最小化的窗口与之相对应的程序被终止执行D.内存不够时会被自动关闭12.WONDOWS中,当一个窗口已最大化后,下列叙述不正确的是()A.该窗口可以最小化 B。

qt常见问题

qt常见问题

QT小技巧1、如果在窗体关闭前自行判断是否可关闭答:重新实现这个窗体的 closeEvent()函数,加入判断操作void MainWindow::closeEvent(QCloseEvent *event){if (maybeSave()){writeSettings();event->accept();}else{event->ignore();}}2、如何用打开和保存文件对话框答:使用QFileDialogQString fileName = QFileDialog::getOpenFileName(this);if (!fileName.isEmpty()){loadFile(fileName);}QString fileName = QFileDialog::getSaveFileName(this);if (fileName.isEmpty()){return false;}如果用qt自带的话:选择文件夹QFileDialog* openFilePath = new QFileDialog( this, " 请选择文件夹", "file"); //打开一个目录选择对话框openFilePath-> setFileMode( QFileDialog:irectoryOnly );if ( openFilePath->exec() == QDialog::Accepted ){//code here!}delete openFilePath;选择文件:QFileDialog *openFilePath = new QFileDialog(this);openFilePath->setWindowTitle(tr("请选择文件"));openFilePath->setDirectory(".");openFilePath->setFilter(tr("txt or image(*.jpg *.png *.bmp *.tiff *.jpeg *.txt)"));if(openFilePath->exec() == QDialog::Accepted){//code here}delete openFilePath;7、如何使用警告、信息等对话框答:使用QMessageBox类的静态方法int ret = QMessageBox::warning(this, tr("Application"),tr("The document has been modified.\n""Do you want to save your changes?"),QMessageBox::Yes | QMessageBox:efault,QMessageBox::No,QMessageBox::Cancel | QMessageBox::Escape);if (ret == QMessageBox::Yes)return save();else if (ret == QMessageBox::Cancel)return false;或者简单点儿:QMessageBox::information(this, "关于","盲人辅助系统(管理端)!\nVersion:1.0\nNo Copyright");9、在Windows下Qt里为什么没有终端输出?答:把下面的配置项加入到.pro文件中win32:CONFIG += console11、想在源代码中直接使用中文,而不使用tr()函数进行转换,怎么办?答:在main函数中加入下面三条语句,但并不提倡QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8")); QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8")); QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));或者QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK")); QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GBK")); QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK"));使用GBK还是使用UTF-8,依源文件中汉字使用的内码而定这样,就可在源文件中直接使用中文,比如:QMessageBox::information(NULL, "信息", "关于本软件的演示信息", QMessageBox::Ok, QMessageBox::NoButtons);12、为什么将开发的使用数据库的程序发布到其它机器就连接不上数据库?答:这是由于程序找不到数据库插件而致,可照如下解决方法:在main函数中加入下面语句:QApplication::addLibraryPath(strPluginsPath");strPluginsPath是插件所在目录,比如此目录为/myapplication/plugins则将需要的sql驱动,比如qsqlmysql.dll, qsqlodbc.dll或对应的.so文件放到/myapplication/plugins/sqldrivers/目录下面就行了这是一种解决方法,还有一种通用的解决方法,即在可执行文件目录下写qt.conf文件,把系统相关的一些目录配置写到 qt.conf文件里,详细情况情参考Qt Document Reference里的qt.conf部分13、如何创建QT使用的DLL(.so)以及如何使用此DLL(.so)答:创建DLL时其工程使用lib模板TEMPLATE=lib而源文件则和使用普通的源文件一样,注意把头文件和源文件分开,因为在其它程序使用此DLL时需要此头文件在使用此DLL时,则在此工程源文件中引入DLL头文件,并在.pro文件中加入下面配置项:LIBS += -Lyourdlllibpath -lyourdlllibnameWindows下和Linux下同样(Windows下生成的DLL文件名为yourdlllibname.dll 而在Linux下生成的为libyourdlllibname.so。

《可视化程序设计》题库及答案

《可视化程序设计》题库及答案

《可视化程序设计》题库及答案一、选择题1.用来将窗体隐藏,而并非从内存中删除的方法是()。

A. 窗体名称.HideB. Exit 窗体名称C. 窗体名称.ExitD. Unload 窗体名称2.将列表框(List Box)上要显示的内容放到列表框控件上的方法是()。

A. AdditemB. DataSourceC. ListIndexD. ToolTipText3.为了在运行时能显示窗体左上角的控制框(系统菜单),必须()。

A.把窗体的Contro1Box 属性设置为Fale,其他属性任意B.把窗体的ControlBox 属性设置为True,并且把Boder Style属性设置为1-5C.把窗体的ControlBox 属性设置为False,同时把BoderStyle属性调协为非0值D.把窗体的ControlBox 属性设置为True,同时把BoderStyle属性设置为0值4.有关多文档界面(Multiple document.nbspInterface)的不正确描述是()。

A.多文档界面(MDI)是指在一个父窗口下面可以同时打开多个子窗口B.子窗口归属于父窗口C.如果父窗口关闭,则所有子窗口全部关闭D.如果所有子窗口全部关闭,则父窗口关闭5.程序运行后,在窗体上单击鼠标,此时窗体不会接收到的事件是()。

A. MouseDownB.MouseUpC.LoadD.Click6.下列选项中全部属于SQL语言的常用命令的是()。

A.Create、From、Drop、Insert B.Where、From、Drop、InsertC.Create、Alter、Drop、Insert D.Between、From、Drop、Insert7.在窗体上按下鼠标左键后释放,不会触发窗体的哪个事件( )。

A.MouseDown B.MouseUp C. Dblclick D.Click8.为了把焦点移到某个指定的控件,所使用的方法是( )A.SetFocus B.Visible C.Refresh D.GetFocus9.可以同时删除字符串前导和尾部空白的函数是( )A.Ltrim B.Rtrim C.Trim D.Mid10.表达式4+5 \ 6 * 7 / 8 Mod 9 的值是( )A.4 B.5 C.6 D.711.下列语句中的语句( )可以实现顺序文件的按行读取操作。

电动排烟窗控制原理 (3)

电动排烟窗控制原理 (3)

电动排烟窗控制原理引言随着人们对于建筑物安全性的要求日益提高,排烟系统成为了现代建筑中必不可少的一部分。

电动排烟窗是排烟系统中的重要组成部分,在火灾或其他紧急情况下可以有效地排除烟气,保障人们的生命安全。

本文将介绍电动排烟窗的控制原理以及其工作流程。

电动排烟窗的构成电动排烟窗由电机、传动机构、控制装置和窗体组成。

其中,电机负责提供动力,传动机构将电机的转动力传递给窗体,控制装置则对电动排烟窗进行控制和监测。

电动排烟窗的控制原理电动排烟窗的控制原理主要包括手动控制和自动控制两种方式。

手动控制在手动控制模式下,用户通过开关或遥控器等控制设备来控制电动排烟窗的开关状态。

一般情况下,手动控制模式只有开和关两个状态。

用户可以根据需要,选择将电动排烟窗打开或关闭。

自动控制在自动控制模式下,电动排烟窗会根据预定的条件进行自动开关。

预定的条件一般包括烟雾浓度、温度和气压等参数,当这些参数超过设定的阈值时,电动排烟窗会自动打开以排除烟气。

在自动控制模式下,电动排烟窗需要通过控制装置来进行监测和操作。

控制装置首先会接收传感器传来的数据,然后根据预设的控制策略判断是否需要开启电动排烟窗。

如果需要开启,则控制装置会将指令发送给电机,电机经过传动机构的作用,将转动力转化为窗体的开启动作。

电动排烟窗的工作流程电动排烟窗在工作时,先进入待机状态,此时电机处于停止状态,窗体关闭。

当控制装置接收到监测数据后,根据预设的控制策略判断是否需要打开电动排烟窗。

如果需要打开,则控制装置会发送指令给电机,电机开始转动,通过传动机构将转动力传递给窗体,使窗体开始打开。

当达到预设条件时,电动排烟窗停止开启动作,并进入保持状态,直到条件变化需要关闭时,控制装置会发送指令给电机,使窗体开始关闭,直至完全关闭。

总结电动排烟窗是保障建筑物安全的重要设备之一。

通过手动控制和自动控制两种方式,电动排烟窗可以灵活地进行开关操作。

在自动控制模式下,通过控制装置的监测和操作,可以根据预定的条件自动打开或关闭电动排烟窗,从而保证人们在紧急情况下的安全。

C#Winform捕获窗体的最小化和最大化事件、关闭按钮事件【整理】

C#Winform捕获窗体的最小化和最大化事件、关闭按钮事件【整理】

C#Winform捕获窗体的最⼩化和最⼤化事件、关闭按钮事件【整理】之前做过⼀些窗体最⼩化之后隐藏窗体到右下⾓托盘的程序,⼀般就⼏个事件和属性的处理:程序启动不显⽰在任务栏,点击最⼩化后隐藏到右下⾓的托盘,点击托盘图标可以弹出程序界⾯。

(具体怎样做读者可以⾃⾏搜索,因为都⼤同⼩异我就不写了)但是最近在做⼀个程序的时候遇到⼀个问题,最⼩化之后虽然不显⽰在任务栏,但是窗体却缩⼩到屏幕的左下⾓,结果还是不能实现真正的隐藏。

可是我找出以前写的⼀些程序来看,运⾏没问题啊,最⼩化不会缩⼩到屏幕左下⾓啊,代码也是⼀样的啊,难道~~⼜是⼈品问题 - -!⽬前⽤以前的⽅法仍⽆法解决这个问题,期待⾼⼿解答....好了,于是我⼜去搜了⼀些资料,就是下⾯这块代码了,完美解决,于是开始研究WndProc这个东东...const int WM_SYSCOMMAND = 0x112;const int SC_CLOSE = 0xF060;const int SC_MINIMIZE = 0xF020;const int SC_MAXIMIZE = 0xF030;protected override void WndProc(ref Message m){if (m.Msg == WM_SYSCOMMAND){if (m.WParam.ToInt32() == SC_MINIMIZE) //是否点击最⼩化{//这⾥写操作代码this.Visible = false; //隐藏窗体return;}if (m.WParam.ToInt32() == SC_MAXIMIZE ){ //..................... }if (m.WParam.ToInt32() == SC_CLOSE ){ //.....................}}base.WndProc(ref m);}//这个功能是捕获最⼩化按钮事件 ,隐藏当前窗体.。

C# 窗体关闭时可以触发的事件

C# 窗体关闭时可以触发的事件

C# 窗体关闭时可以触发的事件用户关闭软件时,软件一般会给“是否确认关闭”的提示。

通常,我们把它写在FormClosing 事件中,如果确定关闭,就关闭;否则把FormClosingEventArgs 的Cancel 属性设置为true,就取消了该窗体的关闭。

如果该窗体是主窗体,我们想在该窗体关闭时关闭整个应用程序,会遇到至少两种情况:(1)该窗体同时是启动窗体,即它是应用程序中所有窗体的父类,则整个应用程序会被关闭。

(2)如果该窗体不是启动窗体,比如我们做了一个欢迎窗体,则应用程序中所有窗体的父类就是这个欢迎窗体了。

这时该窗体的关闭并不会关闭整个应用程序。

我们需要再加入“Application.Exit()”这行代码来退出应用程序。

但同时又有问题了,父窗体的关闭又会给该窗体发送关闭事件,于是该事件又被调用一次,确认对话框又会弹出第二次。

解决方法是用下面的代码:注:做欢迎体界面可以在主窗体中,ShowDialog方法打开欢迎界面,而不是把欢迎界面作为启动窗体。

下面的方法仅有理论意义。

1. p rotected override void WndProc(ref Message m)2. {3. //Console.WriteLine(m.Msg);4. const int WM_SYSCOMMAND = 0x0112;5. const int SC_CLOSE = 0xF060;6. if (m.Msg == WM_SYSCOMMAND && (int)m.WParam == SC_CLOSE)7. {8. //捕捉关闭窗体消息9. //用户点击关闭窗体控制按钮注释为最小化窗体10. //this.WindowState = FormWindowState.Minimized;11.12. //窗体隐藏13. this.Hide();14. return;15. }16. base.WndProc(ref m);17. }FormClosing :在窗体关闭时,FormClosing 事件发生。

VBA窗体之去除窗体关闭按钮

VBA窗体之去除窗体关闭按钮

VBA窗体之去除窗体关闭按钮VBA 的窗体缺少一般窗体的很多属性,不想许多语言窗体那样可以自由的设置窗体的样式,就连其默认的关闭按钮也不能设置为不显示,一般的处理方法是在窗体的关闭事件中添加代码来阻止窗体的关闭。

那还不如就直接运用代码来把他去除掉(如图)。

附件下载:点击链接从百度网盘下载操作如下:•在Excel 的VBE窗口中插入一个用户窗体,将其命名为frmNoCloseIcon。

然后再添加一个模块。

在窗体和模块中添加后面所列代码。

•在工作薄中的任意工作表中添加一窗体按钮控件,将指定其设置宏为 btnShowfrmMaxMin_Click。

其供示范之用.具体代码:"mdClose" 模块代码Sub btnShowfrmMaxMin_Click()frmNoCloseIcon.ShowEnd Sub"frmNoCloseIcon" 窗体代码'****************************************'---此模块演示了去除窗体关闭按钮---'****************************************Option Explicit'以下声明API函数#If Win64 Then'64位Private Declare PtrSafe Function FindWindow _ Lib "user32" _Alias "FindWindowA" ( _ByVal lpClassName As String, _ByVal lpWindowName As String) _As LongPtrPrivate Declare PtrSafe Function GetWindowLong _ Lib "user32" _Alias "GetWindowLongPtrA" ( _ByVal hwnd As LongPtr, _ByVal nIndex As Long) _As LongPtrPrivate Declare PtrSafe Function SetWindowLong _ Lib "user32" _Alias "SetWindowLongPtrA" ( _ByVal hwnd As LongPtr, _ByVal nIndex As Long, _ByVal dwNewLong As LongPtr) _As LongPtrPrivate Declare PtrSafe Function DrawMenuBar _ Lib "user32"( _ByVal hwnd As LongPtr) _As Long#Else '32位'查找窗口Private Declare Function FindWindow _Lib "User32" _Alias "FindWindowA" ( _ByVal lpClassName As String, _ByVal lpWindowName As String) _As Long'取得窗口样式位Private Declare Function GetWindowLong _ Lib "User32" _Alias "GetWindowLongA" ( _ByVal Hwnd As Long, _ByVal nIndex As Long) _As Long'设置窗口样式位Private Declare Function SetWindowLong _ Lib "User32" _Alias "SetWindowLongA" ( _ByVal Hwnd As Long, _ByVal nIndex As Long, _ByVal dwNewLong As Long) _As Long'重绘窗体标题栏Private Declare Function DrawMenuBar _ Lib "User32" ( _ByVal Hwnd As Long) _As Long#End If#If Win64 Then'64位Private FHwnd As LongPtrPrivate FIstype As LongPtr#ElsePrivate FHwnd As LongPrivate FIstype As Long#End If'以下定义常数Private Const GWL_STYLE = (-16) '窗口样式Private Const WS_SYSMENU = &H80000 '系统菜单Private Sub btnClose_Click()Unload MeEnd SubPrivate Sub btnReset_Click()'取得窗口样式位FIstype = GetWindowLong(FHwnd, GWL_STYLE)'窗体样式位: 原样式和系统菜单FIstype = FIstype Or WS_SYSMENU'重设窗体样式位SetWindowLong FHwnd, GWL_STYLE, FIstype'重绘窗体标题栏DrawMenuBar FHwndEnd Sub'**************************************'---------------主程序-----------------'**************************************Private Sub UserForm_Initialize()'查找窗口句柄FHwnd = FindWindow("ThunderDFrame", Me.Caption) '取得窗口样式位FIstype = GetWindowLong(FHwnd, GWL_STYLE)'窗体样式位: 原样式和无系统菜单FIstype = FIstype And Not WS_SYSMENU'重设窗体样式位SetWindowLong FHwnd, GWL_STYLE, FIstype'重绘窗体标题栏DrawMenuBar FHwndEnd Sub。

窗体的基本操作试题答案

窗体的基本操作试题答案

窗体的基本操作试题答案一、选择题1. 在Windows操作系统中,以下哪个快捷键可以快速最小化所有打开的窗口?A. Ctrl + MB. Ctrl + SC. Ctrl + ND. Win + D答案:D2. 在Word文档编辑中,如果需要将选中的文字设置为加粗,应该使用哪个快捷键?A. Ctrl + BB. Ctrl + IC. Ctrl + UD. Ctrl + P答案:A3. 在Excel中,若要对A1单元格到B10单元格范围内的数据进行求和,应使用以下哪个公式?A. =SUM(A1:B10)B. =SUM(A1/B10)C. =A1:B10D. =A1+B10答案:A4. 在PowerPoint中,若要将一张图片设置为幻灯片的背景,应如何操作?A. 右键图片,选择“设置为背景”B. 右键图片,选择“格式图片”C. 选择“设计”选项卡,点击“背景样式”D. 选择“插入”选项卡,点击“图片”答案:C5. 在浏览器中,若要快速访问之前关闭的网页,应该使用哪个快捷键?A. Ctrl + Shift + TB. Ctrl + Shift + NC. Ctrl + Shift + FD. Ctrl + Shift + R答案:A二、填空题1. 在Word中,若要创建一个新的文档,可以通过点击________按钮来实现。

答案:新建2. 在Excel中,若要将单元格格式设置为货币形式,需要在“数字”选项卡下的“货币”中选择相应的货币符号,如________。

答案:¥3. 在PowerPoint中,若要在幻灯片中插入一个视频文件,应选择“插入”选项卡下的________按钮。

答案:视频4. 在Windows资源管理器中,若要查看文件的详细信息,应选择“查看”选项卡中的________视图。

答案:详细信息5. 在浏览器中,若要清除历史记录,通常需要打开设置菜单,找到________选项。

答案:隐私与安全三、判断题1. 在Word文档中,可以通过拖动标尺上的滑块来调整段落间距。

关于C#Dockpanel的一些入门的基本操作

关于C#Dockpanel的一些入门的基本操作

关于C#Dockpanel的⼀些⼊门的基本操作关于C# Dockpanel的⼀些⼊门的基本操作原⽂链接:⼀、引⽤:1.建⽴⼀个WinForm⼯程,默认⽣成了⼀个WinForm窗体Form1(此处默认为主窗体)。

2.引⽤—>添加引⽤—>浏览—>weiFenLuo.winFormsUI.Docking.dll。

3.设置Form1窗体属性IsMdiContainer:True。

4.⼯具箱—>右键—>选择项—>.net组件—>浏览—>weiFenLuo.winFormsUI.Docking.dll—>在⼯具箱出现dockPanel。

5.将dockPanel拖到窗体主窗体上,设置Dock属性,⼀般默认设置为:Fill。

⼆、设置停靠窗体:1.新建⼀个WinForm窗体。

2.在代码中修改窗体继承于DockContent。

如下:using WeifenLuo.WinFormsUI.Docking;public partial class Form2 : DockContent3.在主窗体中显⽰停靠窗体。

在要显⽰停靠窗体的事件中写⼊以下代码:Private void事件名(){ Form2 form2 = new Form2();form2.Show(停靠的⽗容器,DockState.要停靠的⽅位);}三、设置窗体浮动:1、设置需要浮动的窗体的Dock中的DockAreas属性。

四、关闭当前容器中的所有窗体1、获取到当容器中的所有⼦窗体的个数: dockPanel1.Contents.Count;2、获取容器中的所有对象的数组,并将其转换为IDockContent对象:IDockContent content =(IDockContent)dockPanel1.Contents[index];3、循环关闭:for (int index = dockPanel1.Contents.Count;index > 0; index--){if(dockPanel1.Contents[index] isIDockContent){IDockContent content =(IDockContent)dockPanel1.Contents[index];content.DockHandler.Close();}}五、关闭除当前正在活动的⼦窗体之外得到所有⼦窗体:1、获取当前正在活动的⼦窗体对象:this.ActiveMdiChild;2、遍历容器中的⼦窗体,并判断是否为当前正在活动的窗体,不是则关闭:if (this.ActiveMdiChild != null){ //判断是否有⼦窗体foreach (Form f in this.MdiChildren){//获取⼦窗体if (f != this.ActiveMdiChild) { f.Close(); }//判断是否为当前选定窗⼝}}六、更改窗体风格:1、下载要设置风格的资源库或相关控件。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档