VB6.0中的窗口控制全集
VB6.0详细讲义
第二章用户界面设计第三章编程的基础(含变量,常量,条件语句,循环语句,自定义变量,自定义过程,对象和类等基础)第四章 Windows 95的新控件Visual Basic的输入输出第五章 Visual Basic的鼠标事件和绘图第六章 Visual Basic的数据库、报表、预览、打印第七章从文件中存取资料第八章发行应用程序第九章使用Windows API和用Visual Basic建立自己的屏幕保护程序第十章创建ActiveX控件第十一章 ActiveX文档第十二章用对象链接与嵌入(OLE)扩展Visual Basic第十三章使用资源文件第十四章用Visual Basic建立ActiveX DLL第十五章用Winsock控件进行Internet通信第十六章 Web浏览控件第一章Visual Basic介绍§2 窗体和命令钮介绍一、窗体窗体是Windows的基本组成部分,这也是为什么这个操作系统叫Windows的原因。
它的主要属性除上面介绍的以外,还包括:1,Appearance属性这个属性用来决定控件是否采用三维效果。
2,BorderStyle属性这个属性决定了窗体的边框形式,共有6种属性值。
改变窗体的BordrStyle属性后,窗体在屏幕上没有变化,它只在运行时才变为你所要求的样子。
3,ControlBox属性程序员用来决定采用不采用控制框的属性,仅在程序运行时才有效。
4,Font属性程序员可以改变该窗体上显示信息的字体,它控制着直接在窗体上打印的文本显示。
5,Icon属性这个属性是用户经常要使用的一种属性。
当用户的应用程序在工具条上最小化或在Windows桌面上变为一个独立应用程序时,该属性决定将采用何种图标,窗体控制框里的图标也由它决定。
为自己的窗体设置该属性时,要控制住自己挑三拣四的冲动。
6,Visible属性该属性决定窗体是否可见。
错误地改变其值是很危险的,窗体会从眼前消失,这种莫名其妙的事情会使用户惊惶失措,所以肩负重任的程序员一定要慎重哟!7,WindowState属性指定窗体在运行时的三种状态:正常、最小化、最大化。
用VB操作Excel(VB6.0)(整理)
用V B操作E x c e l(V B6.0)(整理) 全面控制Excel:首先创建Excel对象,使用ComObj:Dim ExcelID as Excel.ApplicationSet ExcelID as new Excel.Application?1)显示当前窗口:? ExcelID.Visible:=True;2)更改Excel标题栏:? ExcelID.Caption:='应用程序调用MicrosoftExcel';3)添加新工作簿:4)打开已存在的工作簿:5)设置第2个工作表为活动工作表:? ExcelID.WorkSheets[2].Activate;或ExcelID.WorkSheets['Sheet2'].Activate;6)给单元格赋值:? ExcelID.Cells[1,4].Value:='第一行第四列';7)设置指定列的宽度(单位:字符个数),以第一列为例:8)设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例:9)在第8行之前插入分页符:? ExcelID.WorkSheets[1].Rows[8].PageBreak:=1;10)在第8列之前删除分页符:11)指定边框线宽度:? 1-左 2-右 3-顶4-底 5-斜(\) 6-斜(/)12)清除第一行第四列单元格公式:13)设置第一行字体属性:14)进行页面设置:a.页眉:b.页脚:c.页眉到顶端边距2cm:d.页脚到底端边距3cm:e.顶边距2cm:f.底边距2cm:g.左边距2cm:h.右边距2cm:i.页面水平居中:j.页面垂直居中:k.打印单元格网线:15)拷贝操作:a.拷贝整个工作表:b.拷贝指定区域:c.从A1位置开始粘贴:d.从文件尾部开始粘贴:16)插入一行或一列:17)删除一行或一列:18)打印预览工作表:19)打印输出工作表:20)工作表保存:? Endif21)工作表另存为:? ExcelID.SaveAs('C:\Excel\Demo1.xls');22)放弃存盘:23)关闭工作簿:24)退出Excel:? ExcelID.Quit;25)设置工作表密码:26)EXCEL的显示方式为最大化ndowState=xlMaximized?27)工作薄显示方式为最大化28)设置打开默认工作薄数量? ExcelID.SheetsInNewWorkbook=329)'关闭时是否提示保存(true保存;false不保存) ? ExcelID.DisplayAlerts=False30)设置拆分窗口,及固定行位置31)设置打印时固定打印内容32)设置打印标题33)设置显示方式(分页方式显示)34)设置显示比例35)让Excel响应DDE请求用VB操作EXCEL示例代码? Private Sub Command3_Click()? On Error GoTo err1? Dim i As Long? Dim j As Long? Dim objExl As Excel.Application '声明对象变量? Me.MousePointer=11 '改变鼠标样式? Set objExl=New Excel.Application'初始化对象变量? objExl.SheetsInNewWorkbook=1? '将新建的工作薄数量设为1?? objExl.Sheets("book1").Select? '选中工作薄<book1>? For i=1 To 50'循环写入数据? For j=1 To 5? If i=1 Then??? objExl.Cells(i,j)="E"&i&j? Else??? objExl.Cells(i,j)=i&j? EndIf? Next? Next? objExl.Rows("1:1").Select '选中第一行? Format(Now,"yyyy年mm月dd日hh:MM:ss")? '给工作表加密码? Contents:=True,Scenarios:=True? objExl.Visible=True? '使EXCEL可见? objExl.SheetsInNewWorkbook=3? '将默认新工作薄数量改回3个? ? Set objExl=Nothing'清除对象? Me.MousePointer=0 '修改鼠标? ExitSub? err1:??? objExl.SheetsInNewWorkbook=3?? objExl.DisplayAlerts=False? '关闭时不提示保存? objExl.Quit'关闭EXCEL? objExl.DisplayAlerts=True '关闭时提示保存? Set objExl=Nothing? Me.MousePointer=0? End Sub。
看实例学VB6.0
文本框控件(TextBox)是VB 中最常用的控件。
它是显示和输入文本的容器,相当于一个文字编辑器,提供了所有基本的文字处理功能,例如文本的编辑等。
在下面这个小程序中,我们能看到文本框控件(TextBox)的最基本的属性。
为了学习方便,提供的源码已经作了详细的中文注释,看看源码框中的代码:(源程序下载)这个例子的两个窗体界面如下:主窗体(FormTxtBox ) 窗体(FormBack )我们首先新建一个标准的EXE 工程。
添加两个窗体,并把TextBox 、Button 、Label在属性窗口中将TextPassWord 的PassWordChar 属性设为*;TextResume 的Multiline 属性设为Ture,ScrollBars 属性设为2 -Vertical ;TextAll 文本框的Multiline 属性设为为Ture, ScrollBars 属性设为2 -Vertical ,Appearance 属性设为为0 - Flat 。
下一步我们为FormTxtBox 窗体中“确定”(CmdOK)和“清除”(CmdClear)按钮的Click 事件中添加相应的程序。
其中:TextID.Text = "" 是把会员编号文本框中的内容清空,其它语句与此类似。
FormBack.TextAll.Text = LblID.Caption & " " & TextID.Text _ & vbNewLine & 该语句设置FormBack 窗体中TextAll 文本框的文本。
vbNewLine 是换行显示标志。
“ _”是续行标志,当语句一行写不下时使用此标志,但要注意:前面要加空格。
代码写好之后,我们就可以保存工程,然后按“Ctrl+F5”键,测试检验一下我们的程序了。
看实例学VB6.0--简单的列表框ListBox 的例子--列表框(ListBox )控件表示一个选项清单,用户可能用鼠标选择其中一个或者几个选项。
VB 6.0 讲义(第二章 窗体与基本控件)
第二讲窗体与基本控件一. 控件的基本属性:名称属性:所有对象皆具有的属性,即所创建对象的名称。
对象名称是作为对象的唯一的标识在程序中被引用,不会在窗体中显示。
2.Caption标题属性:控件上所显示内容3.Enable:用于决定控件是否可操作。
Enable:允许操作并对操作响应;False:是不可操作,便灰。
4.Visible:用于决定控件是否可见.Enable:可见;False:是不可见。
5.Height、Width、 Left、Right属性:Height、Width设置控件高度和宽度;Left、Right设置对象在屏幕上的位置,分别表示在容器(如窗体)内的相对容器坐标系统的位置.6.Font属性:改变文本外观FontName字符型,决定字体;FontSize整型,决定大小;FontBold逻辑型,粗体;FontItalic逻辑型,斜体;FontsTrikethru逻辑型,删除线;FontUnderline逻辑型,下划线。
7.BackColor和ForeColor:设置对象的前景色和背景色.(前景色要在显示内容时才可见)8.BorderStyle:设置对象的边界类型, 0-无边框、1-有边框。
9.Backstyle背景样式:0-透明;1-不透明。
10.Alinement对齐:左、中、右。
11.Autosize自动调整大小:12.TabIndex属性:决定按Tab键时,焦点在控件间移动的顺序。
焦点:接受用户鼠标或键盘输入的能力。
对象具有焦点时才能输入。
(Frame、Label 控件不能接受焦点)默认属性:反映某个控件最重要的属性。
可省略(建议不)。
Text1.text=‖333‖等价于 Text1=‖333‖二. 窗体1.属性窗体的属性影响窗体的外观及行为的特征(如:AutoRedraw属性).◆Appreance:设置窗体表面的显示方式.(0-平面;1-立体)◆AutoRedraw:设置窗体图像的重建.(Ture-自动重画曾被覆盖部分;False-不重画)◆BorderStyle:()设置窗体的边界,将影响标题栏有关按钮及状态.(有0~5种设置,区别于基本属性)◆ClipControls:设置窗体重建时是只画新露出部分还是全部重画.◆ControlBox:设置左上角是否放置控制框.(为Ture时,可按Alt+F4键关闭窗体,点击图标会出现控制菜单)◆ScaleWidth、ScaleHeight:ScaleWidth、ScaleHeight表示了窗体可容下的实体尺寸(几何尺寸不变,比例尺变), Height、Width表示窗体的实际几何尺寸(比例尺不变,几何尺寸随属性值改变).◆Picture:用来装入一幅图片.◆ScaleLeft、ScaleRight:设置窗体的坐标系统(左上角-原点位置).◆Windows State:设置窗口的三种状态(Max=2、Min=1、Normal=0)◆KeyPreview:决定是窗体还是焦点(Tab键可在对象间移动焦点)控件响应键盘事件.(Ture—都响应;False—焦点控件响应)2.普通窗体的生命周期:Noties:是否有鼠标、键盘事件及启动、关闭时的事件可通过添加一些语句到相应的事件引发过程中来跟踪。
vb6.0 对话框和菜单
阶段5 “字体”对话框
“字体”对话框用来设置并返回所用字体
的名称、样式、大小、效果及颜色等。
一.设计时建立“字体”对话框
设计时,在通用对话框控件的属性页窗 口“字体”选项卡中设置属性,包括字 体名称、字体大小、最小、最大、标志 、样式等。
二.运行时显示“字体”对话框
运行时,使用通用对话框控件的 ShowFont方法,或将Action属性赋值为4 ,可以显示“字体”对话框。在“字体 ”对话框中选定设置并关闭对话框。
一.控件名称 自定义,默认名称CommonDialog1、 CommonDialog2、……
二.设计时设置控件属性
用鼠标右键单击窗体上的CommonDialog控件图标,在 弹出的快捷菜单中选择“属性”选项,或在属性窗口 中选择“自定义”,再单击右侧的“„”按钮,就可 以打开”属性页“对话框。
三.打开通用对话框的Action 属性
⑴ 显示打开文件对话框 ⑵ 显示保存文件对话框 ⑶ 显示颜色对话框 ⑷ 显示字体对话框 ⑸ 显示打印机设置对话框 ⑹ 显示Windows帮助对话框
四.打开通用对话框的“方法”
⑴ ⑵ ⑶ ⑷ ⑸ ⑹ 显示打开文件对话框 显示保存文件对话框 显示颜色对话框 显示字体对话框 显示打印机设置对话框 显示Windows帮助对话框
菜单的类型 菜单编辑器 下拉式菜单 弹出式菜单
阶段1 菜单的类型
菜单是界面设计的重要组成部分,一般有两种基本类型:
下拉式菜单和弹出式菜单。 下拉式菜单通过打击菜单栏中的菜单标题来打开。
弹出式菜单则通过用鼠标左键或右键单击某个 区域的方式打开。
阶段2 菜单编辑器
VB
6.0没有菜单控件,但提供了建立菜单的菜单编辑器。 在VB 6.0集成开发环境中,选择“工具”菜单中的“菜 单编辑器”选项,可以进入菜单编辑器,为窗体编辑菜 单。
vb-窗口控制
vb-窗⼝控制定义模块Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long'在窗⼝中建⽴⼀timer(时间控制器),然后在代码窗⼝输⼊如下代码:Private Sub Form_Load()Timer1.Interval = 500End Sub时间控制器的代码如下:Private Sub Timer1_Timer()Dim hwnd As Longhwnd = FindWindow(vbNullString, "计算器") '抓取"计算器"这个窗⼝名称.If (hwnd = 0) ThenIf MsgBox("你没有打开[计算器]程序!点击“确定”退出。
点“取消”继续。
", 49, "错误!") = 1 Then EndElseIf (hwnd <> 0) ThenMsgBox "你已经打开了[计算器]程序.点“确定”退出本程序", , "退出"EndEnd IfEnd Sub模拟键盘事件2.以下为模拟键盘事件.⽐如模拟"r"键.----------------------------------------------------------------------------------------------------------------------------'在模块中定义Public Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal Scan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)在窗⼝中建⽴⼀timer.时间间隔随意.只要不是0就可以了哦.呵呵.Private Sub Timer1_Timer()Call keybd_event(82, 0, 0, 0) '模拟按下"R"键End Sub快捷键例⼦3.以下为快捷键例⼦.⽐如按下"ctrl+A"就退出!'可以设置Form的KeyPreview属性为True,然后在Form_KeyDown事件中添加代码:Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)If KeyCode = Asc("A") And Shift = vbCtrlMask Then unload me '如果ctrl+A键被按下就退出End Sub例⼆:在Form中加⼊Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vkey As Long) As IntegerPrivate Function MyHotKey(vKeyCode) As BooleanMyHotKey = (GetAsyncKeyState(vKeyCode) < 0)End Function'然后在循环中或Timer的Timer事件中检测:Private Sub Timer1_Timer()If MyHotKey(vbKeyA) And vbKeyControl Then 'ctrl+AEnd '关闭End If'其中vbkeyA是键盘″A″的常数,其他键可按F1查得。
第四章 vb6.0窗体的设计
第四章窗体的设计4.1 窗体的属性常见的窗体的外观如图4.1所示,它有一个标题栏,标题栏的左端显示控制图标和窗体的标题。
单击控制图标可出现一个下拉菜单,其中提供了对窗体的各种控制命令。
标题栏的右端是3个窗体状态控制按钮。
单击它们分别可使窗体最小化、最大化(或还原)和关闭。
窗体的背景色一般为灰色。
从【窗体设计】窗口中可以看出,VB默认的窗体外观也正是这样的。
在使用VB创建应用程序时,用户可根据需要改变窗体的外观。
如更改控制图标和窗体的标题,确定显示哪些状态控制按钮,甚至可以决定是否显示窗体的标题栏。
设置窗体的外观属性很简单,不需要编写任何程序代码,只需在窗体的【属性】窗口为各属性设置相应的值即可。
在表4.1中列出了窗体的几个主要的外观属性。
其中BorderStyle属性有5个可取的值,每个值对应一种窗体的外观,表4.2.中列出了BorderSty1e属性的取值及其对应的窗体外观。
除了可以设置窗体的各种外观属性外,还可以设置窗体的其他一些属性。
如窗体的位置以及窗体启动时的状态等。
如表4.3所示的是窗体的其他一些重要的属性。
窗体和各种控件的设置窗体或控件的名称,[属性】窗口中,第一个属性都是"名称",这个属性用来在程序代码中就是使用这个名称来引用窗体或控件的。
提示:首次在工程中添加窗体时,该窗体的名称缺省为Forml;添加第二个窗体,其名称缺省为Form2,以此类推。
在代码中就是用这个名称来引用该窗体的。
因此,最好给Name 属性设置一个有实际意义的名称,如给一个关于窗体命名为About.要熟悉这些窗体属性,最好的办法是实践。
在【属性】窗口中更改窗体的一些属性,然后运行该应用程序并观察修改后的效果。
如果想得到某个属性的详细信息,可以选择该属性并按F1键查看联机帮助。
4.2.1 鼠标事件在第2章已经介绍过,鼠标事件有共有5种,它们分别是MouseDown(按下鼠标键)、MouseUp(释放鼠标键)、MouseMove〔移动鼠标)、Click (单击)与DblClick〔双击).1. Click事件与DblClick事件窗体的Click事件过程的形式如下:Private Sub Form_Click()End Sub在该事件过程中添加一段代码,运行程序时,当使用鼠标单击窗体时,则该段代码就会被执行。
vb6.0语句大全讲解
Vb6.0语句大全1、AppActivate 语句激活一应用程序窗口。
语法AppActivate title[, wait]AppActivate语句的语法具有以下几个命名参数:说明AppActivate语句将焦点移动到命名的应用程序或窗口,但并不影响焦点是否最大化或最小化。
当用户采取行动改变焦点或将窗口关闭时,就会将焦点从活动的应用程序窗口移动出去。
可用Shell函数启动一个应用程序并设置窗口样式。
在决定激活哪个应用程序时,请将title与每一个运行中的应用程序的标题字符串进行比较。
如果没有完全匹配,就激活任何这样的应用程序,其标题字符串以title开头。
如果以title命名的应用程序有很多实例,则激活任何一个实例。
AppActivate 语句示例本示例说明使用AppActivate语句来激活应用程序的各种用法。
示例中用到的Shell语句均假定该应用程序已经存在指定的路径中。
Dim MyAppID, ReturnValueAppActivate "Microsoft Word" ' 激活 Microsoft Word。
' AppActivate 也可利用 Shell 函数的返回值。
MyAppID = Shell("C:\WORD\WINWORD.EXE", 1) ' 运行 Microsoft Word。
AppActivate MyAppID ' 激活 Microsoft Word。
' 您也可使用 Shell 函数的返回值。
ReturnValue = Shell("c:\EXCEL\EXCEL.EXE",1) ' 运行 Microsoft Excel。
AppActivate ReturnValue ' 激活 Microsoft Excel。
2、Beep 语句通过计算机喇叭发出一个声调。
vb6 操作mdi子窗体的方法
VB6(Visual Basic 6.0)是微软推出的一种编程语言,它具有结构清晰、易学易用的特点,因此在开发Windows应用程序时被广泛使用。
MDI(Multiple Document Interface)是VB6中常用的一种界面类型,它允许用户在一个父窗体中打开多个子窗体,并且可以方便地在这些子窗体之间进行切换和管理。
在MDI应用程序中操作子窗体是非常常见的需求,如何在VB6中操作MDI子窗体呢?接下来,我们将介绍一些操作MDI子窗体的方法。
一、创建MDI子窗体在VB6中创建MDI子窗体非常简单,只需要在MDI父窗体中添加一个新的子窗体即可。
我们需要在VB6中创建一个MDI项目,然后在MDI父窗体的工具栏中点击“新建子窗体”按钮或者通过编程方式调用"Load"方法来创建一个新的MDI子窗体。
二、操作MDI子窗体的属性和方法在VB6中,我们可以通过操作MDI子窗体的属性和方法来实现对子窗体的管理和控制。
通过设置MDI子窗体的Visible属性可以控制子窗体的显示和隐藏;通过设置MDI子窗体的Title属性可以修改子窗体的标题;通过调用MDI子窗体的Close方法可以关闭子窗体等等。
三、切换和激活MDI子窗体在MDI应用程序中,切换和激活子窗体是非常常见的操作。
在VB6中,我们可以通过调用MDI父窗体的ActiveForm属性来获取当前激活的子窗体,并通过调用MDI子窗体的Activate方法来激活指定的子窗体。
另外,我们还可以通过在MDI父窗体的窗口菜单或者工具栏中添加相应的菜单项或按钮来实现切换和激活子窗体的功能。
四、动态创建和销毁MDI子窗体除了在设计时创建MDI子窗体外,我们还可以在运行时动态地创建和销毁MDI子窗体。
在VB6中,我们可以通过编程方式调用"Load"方法来动态创建新的MDI子窗体,然后通过调用MDI子窗体的Unload 方法来销毁不再需要的子窗体。
VB6.0第四章-控件,窗体
7
可视化程序设计——第四章 常用控件和窗体
4.4 列表框
7.Text属性(默认属性)
.List(.ListIndex)= .Text
8.MultiSelect属性
None:不允许多选。 Simple:简单多选。每次鼠标单击选中一项。 Extended:可扩展多选,与键盘上的某个键配合使用, 如:ctrl+鼠标。
属性:
Path Pattern Archive Normal System Hidden ReadOnly 设置目录或返回当前工作目录 设置要显示的文件类型 是否显示归档文件 是否显示普通文件 是否显示系统文件 是否显示隐含文件 是否显示只读文件 File1.Path=Dir1.Path File1.Pattern=“*.EXE ; *.DLL”
属性:Drive—设置驱动器或返回当前工作驱动器
可通过语句 Drive1.Drive=“C:\” 指定,或从列表中选择。
Drive属性只能在程序代码中设置、访问, 而不能在属性窗口中设置。
事件:Click、Change(列表框顶部的内容改变)
21
可视化程序设计——第四章 常用控件和窗体
DirListBox控件
4.6 驱动器、目录和文件列表框
三、文件列表框
Name 属性:fil [对象.]Path[=Pathname] [对象.]Pattern[=value] [对象.] FileName [=pathname] Path和FileName
19
可视化程序设计——第四章 常用控件和窗体
DriveListBox控件
16
可视化程序设计——第四章 常用控件和窗体
vb打开代码窗口的方法
vb打开代码窗口的方法
Visual Basic(简称VB)是由微软公司推出的面向对象的程序设计语言,它可以帮助您方便的创建程序,一般情况下,我们都需要使用 Visual Basic 提供的代码编辑器来编
写 VB 程序。
VB 代码编辑器是用来编写VBas 代码的程序,通常我们可以使用 Visual Basic语言
编写程序,编写能够运行的程序,调试和修改数据,创建可执行的应用程序,以及编写模块,组件和控件等。
本文将介绍如何打开VB代码窗口。
第一步:点击开始菜单,选择“所有程序”,找到Microsoft Visual Studio 6.0,
然后点击“Visual Basic 6.0”,打开Visual Basic 6.0的菜单。
第二步:在Visual Basic 6.0的菜单中点击“文件”,打开“文件”选项,然后再
点击其中的“新建”选项,在弹出的对话框中选择“模块”,这样就打开了VB代码窗口。
第三步:在VB代码窗口中输入代码,然后点击“编译”按钮,检查代码语法是否有
错误,如果没有错误就可以运行代码了,如果有错误要修改,然后重新编译,直到运行完成。
以上就是关于如何打开VB代码窗口的介绍,使用VB开发的应用程序不仅可以编写简
单的小程序,同时也可以编写复杂的大型程序,将用户的梦想变为现实。
有了VB的平台
支持,用户可以自由的编写各种程序,以及实现不同的功能。
VB6.0快捷键大全
窗体设置,控件布局时用:alt+v+x可以快速显示出工具框Alt+P+N 引用ctrl+左右键头可以移动控件shift+左右键头调整控件大小F7 切换到编辑窗口Shift+f7 切换代码窗口开发代码,调试代码都能用的:Ctrl+C复制Ctrl+V粘贴Ctrl+X剪贴Ctrl+F查找开发代码时用的:Tab 向右推Shift+Tab 向左推Ctrl+H 替换Ctrl+J 呵呵,有点显丑。
有几个函数。
(Alt+→)ctrl+home jump to 首行ctrl+end jump to 末尾调试时使用的:F5 运行F8 断点运行F9 设置/清除断点Ctrl+G 立即窗口Shift+F2 到定义处Ctrl+Shift+F9 清除所有断点Ctrl+shift+F2 到上次编辑处Ctrl+PauseBreak 强行暂停程序(专门对付死循环之类的)shift+F9 可以监视表达式Ctrl+W 编辑监视窗口Ctrl+n n Enter 偶经常要另开一个程序先做试验,你们可能很少用吧?呵呵以上几个,是我使用中最多的。
当然。
其它的我也有使用。
如:Ctrl+J(所选控件置前),Ctrl+G(所选控件置底),F7,Shift+F4还有那些Windows通用的那些快捷键:Ctrl+C,Ctrl+V ,哈哈,这二个快捷键,偶好像使用次数。
也可以在所有使用快捷中前几名呢!哈哈!1、F1:显示MSDN帮助。
当然你要安装MSDN,否则得不到真正的帮助了2、F2:显示对象浏览器。
这里你可以看到对象的各种属性、方法与事件3、F3:查找一下个满足条件的内容4、F4:显示当前选中控件的属性窗体5、F5:运行程序(则是F8了)6、F7:由窗体设计切换到对应的代码窗体7、F8:单步执行程序8、F9:切换断点9、Alt+A:打开外接程序菜单10、Alt+D:打开调试菜单11、Alt+E:打开编辑菜单12、Alt+F:打开文件菜单13、Alt+H:打开帮助菜单14、Alt+I:打开图表菜单15、Alt+O:打开格式菜单16、Alt+T:打开工具菜单17、Alt+P:打开工程菜单18、Alt+R:打开运行菜单19、Alt+U:打开查询菜单20、Alt+Q:退出21、Alt+V:打开视图菜单22、Alt+W:打开窗口菜单23、Alt+→:根据输入的字符检索出可以使用的关键字24、Tab:让选中的代码,集休缩进25、Shift+F2:查看当前光标所在的变量或函数、子过程的定义。
第五章vb6.0 基本控件的使用
第五章基本控件的使用5.1 标签控件在Windows应用程序的各种对话框中,都显示有一些文本提示信息,在VB中可以使用标签控件来实现在窗体中显示这些文本提示信息。
表5.1中列出了标签控件的一些主要属性。
既可以在程序设计阶段通过【属性】窗口设置标签的属性,也可以在程序运行阶段在代码中设置窗体的属性。
如将标签(名称为Labell)显示的文本设置为"欢迎"的语句如下:Labell.Caption=欢迎实例5.1标签的使用在该程序中,窗体上显示一行提示用户执行操作的文本,当用户单击或双击窗体时,窗体上还会显示出用户所执行的操作。
在窗体上放置两个标签控件,它们的属性设置如表5.2所示。
打开【代码】窗口,将下列代码添加到Form_Click事件过程中:(BorderStyle属性的值为0),第二行语句是设置标签上显示的文本。
窗体上显示"您双击了窗体!",并且文本有一个边框,如图5.3所示:5.2 按钮控件在应用程序中,按钮控件常常被用来启动、中断或结束一个进程,用户可以通过简单的单击按钮来执行操作。
只要用户单击按钮,就会触发它的Click事件过程,通过编写按钮的Click 事件过程,就可以指定它的功能了。
按钮控件的常用属性如表5.3所示。
5.2.1按钮的有效性在某些应用程序界面中,按钮会根据用户的操作情况呈现两种不同的状态,一种是"有效",一种是"无效".在"无效"状态时,按钮通常以浅灰色显示,不能响应用户的任何操作。
Windows系统自带的录音机程序界面,其中的【停止】与【后退】按钮无效(以浅灰色显示).按下【播放】按钮后,【播放】按钮变为无效,而【停止】按钮变为有效。
按下【停止】按钮后,【停止】按钮变为无效,【播放】按钮恢复有效。
通过按钮的有效性可以看出当前程序的状态,从而避免一些不需要的或重复的操作。
如在录音机处于停止状态时(【停止】按钮无效),用户就不需要再去单击【停止】按钮来停止播放了。
在VB6.0中实现弹出式菜单的几种方法
在Windows应用程序中,利用弹出式菜单(Pop-up Menu)是增加软件易用性的一个重要方式。
本文将向大家介绍在VB6.0中实现弹出式菜单的几种方法。
利用VB6.0内置的PopupMenu方法PopupMenu方法(Method)是VB6.0内置的实现弹出式菜单的方法,用于在MDIForm或Form等对象中的鼠标点位置或指定位置显示弹出式菜单。
其语法为:Object.PopupMenu menuname, flags, x, y, boldcommand说明如下:通过设置对象(Object)的Scalemode属性来规定X,Y坐标的度量单位,X,Y坐标设定弹出式菜单在对象(Object)中显示的相对位置,如果省略X,Y,则弹出式菜单将显示在当前鼠标点位置。
当用PopupMenu方法激活弹出菜单后,要等到用户选择了弹出菜单中的某个菜单项之后(这种情况下,还要先运行被选择菜单项的相应代码)或在表单其它位置单击鼠标左键消除弹出菜单后,后面的代码才能继续执行。
并且,一次只能激活一个弹出式菜单,当已经有一个弹处菜单被激活或已经有一个下拉菜单被打开时,对PopupMenu方法的调用将被忽略。
下面的例子演示当用户在表单上点击鼠标右键时,在鼠标点处显示弹出式菜单。
欲试验此例子,建立一个表单,在表单中建立一个菜单控件,将其命名为mnuFile(mnuFile菜单至少包含一个子菜单)。
在表单的声明(Declaration)区域加入如下代码:Private Sub Form_MouseDown (Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = vbRightButton ThenPopupMenu mnuFileEnd IfEnd SubPopupMenu方法是VB6.0内置的方法,使用起来方便简单,但该方法有一个不足,即当点击鼠标弹出菜单后,如果不选择菜单项而在其他位置点击鼠标,则菜单并不会在新的鼠标点处显示。
用VB操作Excel(VB6.0)(整理)
用VB操作Excel(VB6.0)(整理)用VB操作Excel(VB6.0)(整理)全面控制Excel:首先创建Excel对象,使用ComObj:Dim ExcelID as Excel.ApplicationSet ExcelID as new Excel.Application1)显示当前窗口:ExcelID.Visible:=True;2)更改Excel标题栏:ExcelID.Caption:='应用程序调用MicrosoftExcel';3)添加新工作簿:ExcelID.WorkBooks.Add;4)打开已存在的工作簿:ExcelID.WorkBooks.Open('C:\Excel\Demo.xls');5)设置第2个工作表为活动工作表:ExcelID.WorkSheets[2].Activate;或ExcelID.WorkSheets['Sheet2'].Activate;6)给单元格赋值:ExcelID.Cells[1,4].Value:='第一行第四列';7)设置指定列的宽度(单位:字符个数),以第一列为例:ExcelID.ActiveSheet.Columns[1].ColumnsWidth:=5;8)设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例:ExcelID.ActiveSheet.Rows[2].RowHeight:=1/0.035;//1厘米9)在第8行之前插入分页符:ExcelID.WorkSheets[1].Rows[8].PageBreak:=1;10)在第8列之前删除分页符:ExcelID.ActiveSheet.Columns[4].PageBreak:=0;11)指定边框线宽度:ExcelID.ActiveSheet.Range['B3:D4'].Borders[2].Weight:=3;1-左 2-右 3-顶4-底 5-斜(\) 6-斜(/)12)清除第一行第四列单元格公式:ExcelID.ActiveSheet.Cells[1,4].ClearContents;13)设置第一行字体属性:ExcelID.ActiveSheet.Rows[1]:='隶书'; ExcelID.ActiveSheet.Rows[1].Font.Color :=clBlue; ExcelID.ActiveSheet.Rows[1].Font.Bold :=True;ExcelID.ActiveSheet.Rows[1].Font.UnderLine:=True;14)进行页面设置:a.页眉:ExcelID.ActiveSheet.PageSetup.CenterHeader:='报表演示'; b.页脚:ExcelID.ActiveSheet.PageSetup.CenterFooter:='第&P页'; c.页眉到顶端边距2cm:ExcelID.ActiveSheet.PageSetup.HeaderMargin:=2/0.035; d.页脚到底端边距3cm:ExcelID.ActiveSheet.PageSetup.HeaderMargin:=3/0.035; e.顶边距2cm:ExcelID.ActiveSheet.PageSetup.T opMargin:=2/0.035;f.底边距2cm:ExcelID.ActiveSheet.PageSetup.BottomMargin:=2/0.035; g.左边距2cm:ExcelID.ActiveSheet.PageSetup.LeftMargin:=2/0.035;h.右边距2cm:ExcelID.ActiveSheet.PageSetup.RightMargin:=2/0.035;i.页面水平居中:ExcelID.ActiveSheet.PageSetup.CenterHorizontally:=2/0.035; j.页面垂直居中:ExcelID.ActiveSheet.PageSetup.CenterVertically:=2/0.035; k.打印单元格网线:ExcelID.ActiveSheet.PageSetup.PrintGridLines:=True;15)拷贝操作:a.拷贝整个工作表:ed.Range.Copy;b.拷贝指定区域:ExcelID.ActiveSheet.Range['A1:E2'].Copy;c.从A1位置开始粘贴:ExcelID.ActiveSheet.Range.['A1'].PasteSpecial;d.从文件尾部开始粘贴:ExcelID.ActiveSheet.Range.PasteSpecial;16)插入一行或一列:a.ExcelID.ActiveSheet.Rows[2].Insert;b.ExcelID.ActiveSheet.Columns[1].Insert;17)删除一行或一列:a.ExcelID.ActiveSheet.Rows[2].Delete;b.ExcelID.ActiveSheet.Columns[1].Delete;18)打印预览工作表:ExcelID.ActiveSheet.PrintPreview;19)打印输出工作表:ExcelID.ActiveSheet.PrintOut;20)工作表保存:IfnotExcelID.ActiveWorkBook.SavedthenExcelID.ActiveSheet.PrintPreviewEndif21)工作表另存为:ExcelID.SaveAs('C:\Excel\Demo1.xls');22)放弃存盘:ExcelID.ActiveWorkBook.Saved:=True;23)关闭工作簿:ExcelID.WorkBooks.Close;24)退出Excel:ExcelID.Quit;25)设置工作表密码:ExcelID.ActiveSheet.Protect"123",DrawingObjects:=True,Con tents:=True,Scenarios:=True26)EXCEL的显示方式为最大化ExcelID.Application.WindowState=xlMaximized27)工作薄显示方式为最大化ExcelID.ActiveWindow.WindowState=xlMaximized28)设置打开默认工作薄数量ExcelID.SheetsInNewWorkbook=329)'关闭时是否提示保存(true保存;false不保存)ExcelID.DisplayAlerts=False30)设置拆分窗口,及固定行位置ExcelID.ActiveWindow.SplitRow=1ExcelID.ActiveWindow.FreezePanes=True31)设置打印时固定打印内容ExcelID.ActiveSheet.PageSetup.PrintTitleRows="$1:$1"32)设置打印标题ExcelID.ActiveSheet.PageSetup.PrintTitleColumns=""33)设置显示方式(分页方式显示)ExcelID.ActiveWindow.View=xlPageBreakPreview34)设置显示比例ExcelID.ActiveWindow.Zoom=10035)让Excel响应DDE请求Ex.Application.IgnoreRemoteRequests=False用VB操作EXCEL示例代码Private Sub Command3_Click()On Error GoTo err1Dim i As LongDim j As LongDim objExl As Excel.Application '声明对象变量Me.MousePointer=11 '改变鼠标样式Set objExl=New Excel.Application'初始化对象变量objExl.SheetsInNewWorkbook=1 '将新建的工作薄数量设为1 objExl.Workbooks.Add'增加一个工作薄objExl.Sheets(objExl.Sheets.Count).Name="book1" '修改工作薄名称objExl.Sheets.Add,objExl.Sheets("book1")‘增加第二个工作薄在第一个之后objExl.Sheets(objExl.Sheets.Count).Name="book2"objExl.Sheets.Add,objExl.Sheets("book2")‘增加第三个工作薄在第二个之后objExl.Sheets(objExl.Sheets.Count).Name="book3"objExl.Sheets("book1").Select '选中工作薄<book1>For i=1 To 50'循环写入数据For j=1 To 5If i=1 ThenobjExl.Selection.NumberFormatLocal="@" '设置格式为文本objExl.Cells(i,j)="E"&i&jElseobjExl.Cells(i,j)=i&jEndIfNextNextobjExl.Rows("1:1").Select '选中第一行objExl.Selection.Font.Bold=True '设为粗体objExl.Selection.Font.Size=24 '设置字体大小objExl.Cells.EntireColumn.AutoFit '自动调整列宽objExl.ActiveWindow.SplitRow=1 '拆分第一行objExl.ActiveWindow.SplitColumn=0 '拆分列objExl.ActiveWindow.FreezePanes=True '固定拆分objExl.ActiveSheet.PageSetup.PrintTitleRows="$1:$1" '设置打印固定行objExl.ActiveSheet.PageSetup.PrintTitleColumns=""'打印标题objExl.ActiveSheet.PageSetup.RightFooter="打印时间:"&_ Format(Now,"yyyy年mm月dd日hh:MM:ss")objExl.ActiveWindow.View=xlPageBreakPreview'设置显示方式objExl.ActiveWindow.Zoom=100 '设置显示大小'给工作表加密码objExl.ActiveSheet.Protect"123",DrawingObjects:=True, _Contents:=True,Scenarios:=TrueobjExl.Application.IgnoreRemoteRequests=FalseobjExl.Visible=True '使EXCEL可见objExl.Application.WindowState=xlMaximized'EXCEL的显示方式为最大化objExl.ActiveWindow.WindowState=xlMaximized'工作薄显示方式为最大化objExl.SheetsInNewWorkbook=3 '将默认新工作薄数量改回3个Set objExl=Nothing'清除对象Me.MousePointer=0 '修改鼠标ExitSuberr1:objExl.SheetsInNewWorkbook=3objExl.DisplayAlerts=False '关闭时不提示保存objExl.Quit'关闭EXCELobjExl.DisplayAlerts=True '关闭时提示保存Set objExl=NothingMe.MousePointer=0End Sub。
第1章 VB6.0简介
结 束 工 程
工 程 资 源 管 理 器
属口 性 窗 口
窗 体 布 局 窗
对 象 浏 览 器
工口 具 箱
数 据 视 图 窗
控 件 管 理 器
代码窗口
对象列表框 过程列表框
代码框
事件过程模板 过程查看按钮 全模块查看按钮
工程资源管理器窗口
查看对象 切换文件夹
查看代码 折叠按钮 展开按钮 工程文件 名 窗体文件 名
第1章 VB6.0 简介 章
本章内容
VB6.0 概述 VB6.0 的安装 VB6.0 的集成开发环境
Visual Basic 概述
Visual Basic是Microsoft公司于 1991年在 BASIC语言基础上开发出的新一代的、面向对 象的、可视化的、以事件驱动为运行机制的程 序设计语言。 1992年至1997年,陆续推出2.0版、3.0版、 4.0版、5.0版。 1998年秋季,推出了Visual Basic 6.0版 。 Windows 2000成功推出后,Microsoft公司又 推出了功能更强的版本。
工具箱窗口
指针(Point) 指针 标签(Label) 标签 框架(Frame) 框架 复选框(CheckBox) 复选框 组合框(ComboBox) 组合框 水平滚动条(HscrollBar) 水平滚动条 定时器(Timer) 定时器 目录列表框(DirListBox) 目录列表框 形状(Shape) 形状 图像框(Image) 图像框 图片框(PictureBox) 图片框 文本框(TextBox) 文本框 命令按钮(CommandButton) 命令按钮 单选按钮(OptionButton) 单选按钮 列表框(ListBox) 列表框 垂直滚动条(VscrollBar) 垂直滚动条 驱动器列表框(DriveListBox) 驱动器列表框 文件列表框(FileListBox) 文件列表框 直线(Line) 直线 数据(Data) 数据
VB60详细讲义(VB6实用教程
VB60详细讲义(VB6实用教程VB6.0是一种用于开发Windows应用程序的集成开发环境(IDE),它是Visual Basic的一版。
下面是VB6.0的详细讲义。
1.VB6.0简介:VB6.0是在1998年发布的,它是Visual Basic的最后一个版本。
VB6.0可以用于开发各种Windows应用程序,包括桌面应用、数据库应用和Web应用等。
与其他编程语言相比,VB6.0具有简单易学、可视化编程和大量的库支持等特点。
2.VB6.0开发环境:3.VB6.0语法:VB6.0的语法非常简单易懂,类似自然语言。
VB6.0的程序由模块、过程和语句构成。
模块是程序的基本单位,过程是在模块中执行的代码块,语句是过程的组成部分,用于执行特定的操作。
4.VB6.0控件:5.VB6.0事件:事件是用户与应用程序交互的方式,例如点击按钮、输入文本等操作都会触发相应的事件。
用户可以编写事件处理程序来响应这些事件,并执行相应的操作。
6.VB6.0数据库编程:VB6.0提供了丰富的数据库编程支持,可以连接多种类型的数据库,并对数据库进行查询、插入、更新和删除等操作。
通过VB6.0的数据库编程功能,用户可以轻松地创建强大的数据库应用程序。
7.VB6.0常用控件:8.VB6.0调试技巧:在开发VB6.0应用程序过程中,调试是一个非常重要的环节。
VB6.0提供了丰富的调试工具,例如断点、监视窗口和调试输出等。
用户可以使用这些工具来定位和修复应用程序中的错误。
9.VB6.0图形编程:VB6.0具有强大的图形编程功能,可以创建各种图形界面和图表。
用户可以使用VB6.0的图形编程功能来绘制图形、创建动画和实现视觉效果等。
10.VB6.0的兼容性:VB6.0是一个非常成熟和稳定的开发环境,但由于技术的不断发展,VB6.0的兼容性已经逐渐受到限制。
因此,用户在选择开发工具时需要谨慎考虑,权衡使用最新技术与兼容性的利弊。
以上是VB6.0的详细讲义。
窗口_Visual Basic 6.0 程序设计_[共2页]
1.3.5 窗口在Visual Basic集成开发环境中(参见图1-5),还有以下几种窗口用于完成不同的功能:窗体设计器窗口、工程资源管理器窗口、属性窗口、代码编辑器窗口、窗体布局窗口和立即窗口。
1.窗体设计器窗口窗体设计器窗口简称窗体(Form),它是Visual Basic最基本的对象,提供与用户交互的窗口,每当Visual Basic启动时,系统会打开一个窗体,默认名称为Form1,用户也可以通过属性窗口的Name(名称)属性设置来改变窗体名称。
如果应用程序需要多个窗体,可以选择“工程”菜单中的“添加窗体”菜单创建新窗体。
在程序设计时,程序员可根据程序界面的要求,从工具箱中选择所需要的内部控件,并在窗体中画出来,以形成程序运行时的用户界面窗口。
2.工程资源管理器窗口工程资源管理器是用来管理工程的,如图1-12所示。
它的功能类似于Windows中的资源管理器。
图1-12 工程资源管理器在工程资源管理器中,列出了当前用户所创建的所有工程,并以树形目录的形式显示所有工程的组成。
新添加的窗体和模块都可以在工程资源管理器中显示出来,并且可以在该窗口中删除工程和模块。
在窗口的标题下面有如下3个按钮。
“查看代码”按钮:用来显示相应文件的代码。
“查看对象”按钮:用来显示相应的窗体。
“切换文件夹”按钮:用来显示各类文件所在的文件夹。
有关工程资源管理器的具体用法,请参见教材2.4节。
3.属性窗口属性窗口用于设定对象的属性,通过“视图”菜单中的“属性窗口”命令,即可打开属性窗口。
该窗口由对象选择框、属性显示排列方式、属性列表框及当前属性的解释框4部分组成。
(1)对象选择框位于属性窗口的上方,在这一栏的右侧有一个下拉按钮,单击它便会显示对象列表。
在对象列表中选择一个对象,该对象的属性就会显示在下方的属性列表框中。
(2)属性显示排列方式它有两个标签:“按字母序”和“按分类序”,可以按字母方式排列对象属性和按对象属性12。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VB6.0中的窗口控制全集 22007-03-20 11:28:55| 分类:开发语言阅读376 评论0 字号:大中小订阅让窗口一直在上面很多流行软件都有这样一个选项:Always on Top。
它可以让窗口在最上面,别的窗口不能覆盖它。
我们在VB 中,可以使用下面的方法来实现:Private Const SWP_NOSIZE = &H1Private Const SWP_NOMOVE = &H2Private Const SWP_NOZORDER = &H4Private Const SWP_NOREDRAW = &H8Private Const SWP_NOACTIVATE = &H10Private Const SWP_FRAMECHANGED = &H20Private Const SWP_SHOWWINDOW = &H40Private Const SWP_NOCOPYBITS = &H80Private Const SWP_NOOWNERZORDER = &H200Private Const SWP_DRAWFRAME = SWP_FRAMECHANGED Private Const SWP_NOREPOSITION =SWP_NOOWNERZORDERPrivate Const HWND_TOP = 0Private Const HWND_BOTTOM = 1Private Const HWND_TOPMOST = -1Private Const HWND_NOTOPMOST = -2Private Declare Function SetWindowPos Lib "user32" ( _ ByVal hwnd As Long, _ByVal hWndInsertAfter As Long, _ByVal X As Long, _ByVal Y As Long, _ByVal cx As Long, _ByVal cy As Long, _ByVal wFlags As Long) As LongPrivate mbOnTop As BooleanPrivate Property Let OnTop (Setting As Boolean)if Setting ThenSetWindowPos hwnd, -1, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZEElseSetWindowPos hwnd, -2, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZEEnd IfmbOnTop = SettingEnd PropertyPrivate Property Get OnTop() As Boolean'Return the private variable set in Property LetOnTop = mbOnTopEnd Property调用OnTop=True 即可让窗口Always On Top。
创建无Icon 的窗口我们在很多时候都需要那种无Icon 的窗口,如“关于……”“查找”等。
在VB 中,我们可以按以下步骤来创建此类窗口:1、设置窗口的BorderStyle = 3;2、在Form_Load 中加入:Me.Icon = LoadPicture("")创建不规则窗口Win32 API 有很多让你意想不到的功能。
要创建特殊的不规则窗口看上去似乎很难。
但我们如果我们说我们用几行代码就可以实现,这似乎不可思议。
但事实就是如此!请试试:Private Declare Function CreateEllipticRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As LongPrivate Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As LongPrivate Sub Form_Load()Show 'The form!SetWindowRgn hWnd, CreateEllipticRgn(0, 0, 300, 200), True End Sub上述代码可以创建一个椭圆形状的窗口。
怎么样??用VB6.0获取正在系统中运行的窗口标题熟悉Visual Basic的读者都知道,AppActivate语句是激活一个应用程序窗口其后所带的参数是指要被子激活的应用程序窗口标题条的字符串。
如果要激活的是一个常见的应用程序,我们在编写程序时就可以直接写上此程序的窗口标题。
例如,我们想激活Windows95的计算器,可先运行程序x=SHELL("Calc.exe",1),然后再激活计算器窗口AppActivate“计算器”,则程序焦点自动转到计算器窗口上。
然而单纯使用该方法局限性非常大,比如上述例子,如果我们放在英文Windows95上运行,计算器的窗口标题就不是“计算器”,而是“Calculator”。
再一个局限性就是在很多情况下我们并不知道要激活的程序窗口标题名称,如何编制一个能自动查找程序窗口标题名称的程序是本文要解决的问题。
我们可以采取如下办法,来获取正在系统运行的窗口标题。
在WindowsAPI中有一个函数:Get Windows (ByVal hWnd As Long ,ByVal wCmd As Long) As Long其中,hWnd是当前窗口句柄,wCmd是与hWnd有联系的常量,其含义如下:wCmd值含义GW-GHILD第一个子窗口GW-HWNDFIRST子窗口的第一兄弟窗口,其第一个顶层窗口GW-HWNDLAST子窗口的最后一个兄弟窗口,或最后一个顶层窗口GW-HWNDNEXT后继窗口GW-HWNDPRCV先前窗口GW-OWNER窗口拥有者此函数返回值是wCmd所指的窗口的句柄。
我们利用此句柄,再用函数Get WindowsText (ByVal hWnd As Long ,ByVal Ipstring As String, ByVal cch As Long) As Long,将句柄hWnd指定的窗口标题放入一个字符串变量Ipstring中,cch是指放入Ipstring中的最大字符数。
此函数成功时返回字符串长度,如果窗口无标题则返回零。
在使用Get WindowsText函数前,还要先用函数Get WindowsTextLength (ByVal hWnd As Long )As Long得到hWnd 指定窗口标题的长度,放入cch中。
自编一个过程FindTitle()查找系统中正在运行的所有标题,首先获得第一个顶层窗口句柄currwnd,而后采用While…Wend循环结构,当currwnd不为零而且标题文本长度不为零时,将获得的标题存入列表框Combo1,再找后继窗口的句柄,当句柄currwnd=0时表示已没有了后继窗口,退出循环。
这样就将系统中所有的窗口句柄及标题找出来了。
然而调试中发现用此方法找到的窗口标题非常多,这说明Windows 系统运行时有许多隐含的窗口,而这些窗口是我们所不需要的,而且用AppActivate激活时也出现错误。
因此我们再自编一个过程Sift ()查找可激活的窗口。
其方法是用AppActivate逐个激活所有窗口,出现错误的丢掉,保留可激活的窗口标题,放入列表框Combo2。
首先新建窗体Form1,Caption=“获取窗口标题”,在窗体Form1上建立两个标签,Label1,Caption=“所有窗口标题”,Label2.Caption=“可激活的窗口标题”;建立两个下拉列表框,Combo1存放系统中的所有标题名称,Combo2存放可激活的标题名称;再建立两个命令按钮,Command1.Caption=“激活窗体”,可对所列窗体进行测试,命令按钮Comman d2.Caption=“刷新”,点击它可重新查找所有在系统中的窗体名称,当本程序运行以后又运行了新程序时使用此按钮。
从VB系统菜单上选取Project中的Add Module,将下述API函数及一些常量录入。
'Module 模块Declare Function GetWindow Lib "user32"(ByVal hwnd As Long, ByVal wCmd As Long)As LongDeclare Function GetWindowText Lib "user32" Aias"GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String,ByVal cch As Long)As LongDeclare Function GetWindowText Length Lib "user32" Aias"GetWindowTextLengthA" (ByVal hwnd As Long)As Long Public Const GW-HWNDFIRST=0Public Const GW-HWNDLAST=1Public Const GW-HWNDNEXT=2Public Const GW-HWNDPREV=3Public Const GW-OWNER=4建立两个子程序:Sub FindTitle ()'查找桌面上的所有窗口标题Dim currwnd As IntegerCombo1.ClearCurrwnd=GetWindow (hwnd, GW-HWNDFIRST) While currwnd<>0Length= GetWindow TextLength (currwnd)listitem$=Space $(length +1)length= GetWindow Text (currwnd,listitem$,length+1) if length>0 ThenCombo1.Addltem listitem $End ifcurrwnd= GetWindow (currwnd, GW-HWNDNEXT)if Combl1.ListCount>0 ThenCombo1.Text=Combol.List (0)Combo1.Listindex =0ElseMsgBox“没有发现可活动的窗口”,16,“活动”End ifWendEnd SubSub Sift ()'测试窗口能否活动i=0Combo2.ClearDoOn Local Error Resume NextAppActivate Combo1.List (i)If Err =0 ThenCombo2.Additem Combo1.List(i)End ifi=i+1Loop Unti 1 i=Combo1.ListCount-1AppActivate Form1.CaptionIf Combo2.ListCount>0 thenCombo2.Text =Combo2.List (0)Combo2.Listindex =0ElseMsgBox “没有发现可活动窗口”,16,“活动”End ifEnd SubPrivate Sub Form-Load ()Form1.Show'首先将本窗体显示出来,否则查找出的窗体标题没有本身MsgBox "开始查找窗口标题"Call FindTitleCall SiftEnd SubPrivate Sub Command1-Click ()F $=Combo2.TextOn Local Error Resume NextAppActivate F $End SubPrivate Sub Command2-Click ()Call FindTitleCall SiftEnd Sub制作渐变的窗口背景色大家知道,在许多Windows软件的安装程序中,时常可以看到以某种颜色由浅至深的渐变为背景的窗口。