注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

We Media

 
 
 

日志

 
 

VB控件通用属性  

2012-01-25 21:30:53|  分类: 【V B 編程】 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

通用属性:

 
修改对象的前景颜色:ForeColor属性。
修改对象的背景颜色:BackColor属性。
对象的标题或内容:Caption属性。
对象是否需要三维立体的外观:Appearance属性。
对象是否自动对齐到它所在容器的边缘:Align属性。
对象是水平放置还是垂直放置:Orientation属性。0为水平,1为垂直。
对象在它所在容器内的位置和大小:Left,Top,Width,Height属性。
对象内部坐标系统的左上角位置和内部大小:ScaleLeft,ScaleTop,ScaleWidth,
ScaleHeight属性。
当鼠标在对象上时显示的不同形状:MousePointer属性。
当鼠标在对象上时显示的提示文字:TooltipText属性。
在对象外部是否包围有1个边框:BorderStyle属性。
对象边框的颜色:BorderColor属性。
改变对象上文字成不同字体:Font属性。可分别开来:
① 是否要粗体:FontBold属性;
② 是否要斜体:FontItalic属性;
③ 设置字体名称:FontName属性。
④ 设置字号大小:FontSize属性。
⑤ 是否要加删除线:FontStrikethru属性。
⑥ 是否要加下划线:FontUnderline属性。
由用户自定义的1个对象标记:Tag属性。
设置1个对象是否可自动拖放操作,同时不响应对象事件:DragMode属性。
对象在拖放过程中显示的图标:DragIcon属性。
当对象中内容很多,对象大小不够时,是否自动扩大对象的尺寸以完全显示对象的内容:AutoSize属性。
对象是否在界面中可见:Visible属性。
对象是否有效:Enabled属性。
当对象是对象数组时,确定对象的下标:Index属性。
对象是否可通过TAB键转移获得焦点:TabStop属性。
用TAB键转移焦点时本对象所处的顺序位置:TabIndex属性。
如果对象可设置为不同样式,选择各种样式:Style属性。
选择对象中文本的的对齐方式是左对齐,右对齐还是居中对齐:Alignment属性。
使对象中文本从右到左显示(如"国和共民人华中"):RightToLeft属性。
获得对象所处的容器对象:Container属性。
如果对象是数据绑定对象,则:①对象绑定到哪个数据对象:DataSource属性;②对象绑定到哪个字段:DataField属性。③更改对象显示数据的格式:DataFormat属性;④绑定对象中数据内容是否被改变:DataChanged属性。
返回对象的父对象:Parent属性。
返回对象在代码中的名称:Name属性。
在对象上显示图片:Picture属性。
对象的当前值或当前状态:Value属性。
如果对象的作用是体现1段范围,则:
① 范围的最小值:Min属性。
② 范围的最大值:Max属性。
③ 对象的当前值:Value属性;
④ 用户对当前值每次较小的改变量:SmallChange属性;
⑤ 用户对当前值每次较大的改变量:LargeChange属性。
允许用户在对象内选中一部分内容进行操作:Sel……属性。如SelStart选中内容的开始位置,SelLength选中内容长度等。
让本对象与1个ImageList对象建立关联以使用其中的图片:ImageList属性。
对象的手工拖放方法:Drag方法,Drag 1开始拖放;Drag2停止拖放:Drag 0取消拖放。
在界面中移动对象的位置和大小:Move方法。
赋予对象以焦点:SetFocus方法。
当几个对象重叠在一起时,决定对象显示或被遮盖:Zorder方法.Zorder 0显示;Zorder 1遮住。
清空对象内容:Clear方法。

★ 系统对象:就是在VB中已定义好的不用自行创建的,有:
App对象:当前的应用程序。
Clipboard对象:Windows剪贴板。
Screen对象:显示屏幕。
Printer对象:系统打印机。
Debug对象:调试窗口(调试时用)。
Screen对象的属性:
active control:拥有焦点的控件。
active form:拥有焦点的窗体。(仅限于本程序所包含窗体)
TwipsPerPixelX:对象中每一水平象素的缇数。(好象是1象素=15缇)
TwipsPerPixelY:对象中每一垂直象素的缇数。(好象是15)
Clipboard剪贴板对象的方法:
clear方法:清空剪贴板。
粘贴文本gettext方法:返回剪贴板中的文本。(如text1.text=clipboard.gettext)
粘贴图象getdata方法:返回剪贴板中的图象文件。
复制文本settext方法:复制文本到剪贴板。clipboard.settext 文本,类型格式;可以利用"类型格式"参数来改变文本成bmp等图象格式,有意思。???
复制图象setdata方法:使用指定的图形格式将图形保存到剪贴板。注:在使用本方法向剪贴板复制图象前,必须先用Clear方法清空剪贴板原有图象。如:
Clipboard .Clear
Clipboard .SetData Picture1.Picture, 2
其中参数2表示图形为bmp格式。 
getformat方法:返回剪贴板中项目的格式。
剪贴板对象中项目格式有如下几种:vbCFtext(值为1)文本格式;vbCFBitmap(2)位图bmp格式;vbCFMetafile(3)图元文件wmf格式;vbCFDIB(8)与设备无关的位图格式(DIB),vbCFPalette(9)调色板格式;vbCFlink(&HBF00)动态数据交互链。
检查剪贴板项目格式的例子如:
If Clipboard.GetFormat(vbCFText)=True then
mnupaste.enabled=true
end if
注:在剪贴板中可以同时包含文本和图象,互不干扰。
★ 使用打印机打印:1,打印文本:Printer对象的print方法:格式:
Printer . print 文本内容 如:Printer . print "李新宁"
在使用print方法把文本输出到打印机前,还可对字体进行设置,如:
Printer.FontSize = 14
Printer.Print "你好"
字体的设置有FontName,FontUnderline等。
2,打印整个窗体:窗体的PrintForm方法,格式:Form对象。PrintForm.
将窗体客户区及其上可见的控件全部打印到纸上,如图形,表格等。能保留原来的位置和格式,如果要使某些控件(如按纽、表格线等)不打印到纸上,只要将其Visible属性设为False即可。如:
Command1.Visible = False
Form1. PrintForm
打印机对象Printer有以下一些属性方法:
NewPage方法:在打印作业中开始新的一页。
EndDoc方法:结束打印设置并将全部结果输出到打印机(真正打印开始);
KillDoc方法:中断当前打印作业。
Page属性:打印时包含的页号。
如下例:
Printer . Print "" 初始化打印机,作好打印准备。
Printer.FontName = "Arial" 设置字体 
Printer.FontBold = True 
Printer.Print Label1.Caption 用粗体打印标签label1中的文本
Printer.FontBold = False
Printer.Print Text1.Text 不用粗体打印文本框中文本
Printer.EndDoc 结束打印设置并真正打印所有指定内容
★ 各对象通用属性一则:tooltiptext属性--当鼠标在该对象上暂停时显示的小文本框,用于作一些对用户的提示。如:label1.tooltiptext="哇,太酷了!",注意,弹出的小文本框不会自动消失,直到鼠标离开它,如果只是作短暂的提示,那么,就用一个timer对象吧。


★ 控件的Clear方法:清除控件对象中的内容。对所有对象可用,如剪贴板也不例外,写法为:clipboard.clear
★ 同一窗体内所有界面元素焦点的次序属性:tabindex属性,它决定用tab键移动焦点时的对象次序。
★ 指定鼠标指针形状的属性:对象的 mousepointer属性,有0--15种不同的指针形状,还可以选"99"自定义形状(结合mouseicon属性指定图形文件),这样在运行程序时,当鼠标移到指定对象时,指针就会变成定义的形状了。
★ 对象的大小属性:height 高度;width 宽度
例,我们可以做一个"放大镜",当用户单击图片框时,图片框加大尺寸:
Private Sub Image1_Click()
Image1.Height = Image1.Height + 50
Image1.Width = Image1.Width + 40
End Sub
★ 改变对象在代码中的名字:"(名称)"属性:如"command1"改成"cmd1"
命名的约定:由于"(名称)"属性改变的是对象在代码中使用的名字,因此,需要起一个有相关意义而又标明相关控件类别的好名字,规则是:在你起好的名字前加上三个字母前缀:combobox :前缀为cbo
checkbox: chk
command button cmd
common dialog dlg
data dat
★ 对象通用事件mousemove事件,当鼠标移到该对象时发生,用作特殊效果非常好。
★ 在使用mousemove事件时,有时有一种情况,在对象上每移动一点鼠标,就会触发该事件,哪怕总是在这个对象上移动,而我只是想当鼠标第一次移上该对象时,使相关事件发生(如发一个声音),怎么办?可以事先设一个变量,在mousemove事件用if语句和改变变量值的办法来实现--只"if真"一次。自已试试吧。
★ 通用方法setfocus作用:赋予对象焦点,格式: 对象名.setfocus。注:SetFocus方法必须赋予界面中可视即Visible属性为真的控件上。
★ 在使用setfocus方法赋予一个对象焦点时,不能在form_load事件中直接进行赋予(如在其中写command1.setfocus),因为焦点只能赋到可视(visible为真)的控件上,在load加载还未完成时,窗体及其上的控件都是不可视的。这一点值得注意,但可以在加载完后转移焦点,方法是在第一个获得焦点的对象的gotfocus事件中写:command1.setfocus,就可以了。


图形方法:
在图形方法中,首先要确定坐标系统和度量单位,可通过对象的scalemode属性改变坐标度量单位,有七种可选单位(缺省为1-缇)。一般用3(象素)。
cls:如picture1.cls 清空对象(对象内部清屏)
pset:画点并指定颜色。格式:
对象名.pset(点的坐标x,y),点的RGB颜色
picture1.pset(1000,500),RGB(255,0,0)
point:查看某个点的颜色值(一个8位以内的长整数)。格式:
对象名.point(点的坐标x,y)
x=picture1.point(1240,5910)
line:画线,矩形(加B)或画填充框(加BF)。格式:
对象名.line(x1,y1)-(x2,y2),颜色,B或BF 
如果加上B或BF,则表示画矩形,B表示用指定颜色在两坐标间画矩形 框,但矩形框内部不进行颜色填充,而加BF,则用指定颜色填满整个矩形块。
Picture1.Line (100, 100)-(1000, 1000), RGB(244, 244, 0), BF
画了一个黄色矩形块。
circle:画圆,椭圆或圆弧。格式:
对象名.circle(x,y圆心坐标),半径,颜色,圆弧起点,圆弧终点,椭圆纵横比
picture1.circle(1000,500),400,RGB(0,0,255)
圆弧起点与终点在-2pi到2pi值之间(以度为单位)。
★ 打开或运行本机磁盘上指定的程序、文件(夹)、Internet地址等,功能与开始菜单"运行"相同,格式:Shell "Rundll32.exe URL.dll,FileProtocolHandler 路径及文件名",1例如: Shell "rundll32.exe url.dll,Fileprotocolhandler c:\windows",1 打开文件夹。
Shell "rundll32.exe url.dll,Fileprotocolhandler http://www.cctv.com/",1 打开网页。
Shell "rundll32.exe url.dll,Fileprotocolhandler c:\美女.bmp",1 使用关联程序打开文件。 
在Windows2000中怎么不可以?
★ 指定对象所属的容器,用set关健字和对象的Container属性:,如要把在窗体form1中的一个按纽改放到picture1中去,那么用 Set Command1.Container = Picture1.可以作为容器的有Form,Picture和Frame.格式:set 对象名.Container=容器名
★ 与绘图有关的属性(Form窗体或Picture对象):
CurrentX和CurrentY:设置当前光标的位置。如在指定位置进行输出。如:
Form1.CurrentX = 40:Form1.CurrentY = 50:Print "aaaaaaaaaaaa"
drawmode:选择绘图时线条颜色的产生方法(位与,或,。覆盖等)共16种。
drawstyle:设置画线的线型(有0-6种,0与6为实线,1为虚线,2为点线,3,4,5为点虚线)。
drawwidth:画线的宽度。
autoredraw:自动重画。(?:绘图是否在内存中直接分配空间来存放该图形信息,以便在被遮住等情况发生而重新显示时自动调用内存进行图形恢复。如果为节省内存不要这项功能,就要在代码中用paint事件来实现。)
★ 通用属性与事件一则:对象的CausesValidation属性和Validate事件,这两个总是在一起使用:validate事件在对象即将失去焦点前发生,在此事件中如果设一个参数Cancel=True的话,那么窗体中其他预先设好的causesvalidation属性为true的对象就不能获得焦点(缺省时都为true),因此可用来选择性地限制某些对象,直到关健对象的Validate事件cancel等于False为止。如:
Private Sub Form_Load()
Command1.CausesValidation = False
Text2.CausesValidation = True 这个对象将受到限制
End Sub
Private Sub Text1_Validate(Cancel As Boolean) 在缺省情况下,cancel总为false
If Text1.Text <> "1234" Then
MsgBox "密码错误!", , "错误"
Cancel = True
End If
End Sub
运行时,如果你输入的不是1234,那么当你试图将焦点改变到text2时(如鼠标单击或用TAB键等),就会出现"密码错误"提示,并使焦点仍在text1中。
★ 通用属性:定制度量刻度的四个属性:
scaleleft,scaletop:自定义设置对象内绘图区域左上角坐标,缺省为0,0。如果进行了设置,则该对象内所有的绘图方法都将基于左上角的新坐标值进行,如原在左上角为0,0下form1.pset(100,50)画了一点,改变form1.scaleleft=100,form1.scaletop=50后,这个点就跑到左上角去了。
scalewidth,scaleheight:自定义设置对象内绘图区域宽度和高度。现有的绘图区域将根据这两个属性设置的值,确定新的单位刻度。如随便设form1.scalewidth=100,则不管怎样,反正就是将绘图区的宽width划分成100等份,每份就是新的单位刻度(还可设为负数)。
当以上四个属性中的任何1个被人为地改变后,其ScaleMode属性自动变为0用户自定义型。
★ 控件的通用属性几则:
HelpContextID:设置上下文编号,为程序提供上下文帮助,格式:
对象.HelpContextID=编号
hWnd:返回窗体或控件的句柄。[还有hdc是设备场景句柄]
parent:返回本对象的上一级对象。如对象command1放在form1中,那么
command1.parent.Cls 就是父窗口form1清屏。等价于form1.cls
利用parent属性,可以将对象作为参数来传递。
★ 对象的Drag方法:对象的手工拖动操作。
拖放:1,自动拖放--只要将要拖动对象的Dragmode属性设为1自动拖放,此时对象不再响应鼠标事件,如Click事件等。专等按下鼠标的拖动操作发生。
2,手工拖放--常用此方法。首先把要拖动对象的Dragmode属性为0,在代码中使用Drag方法启动开始拖放。格式:对象.。Drag vbBeginDrag(值1),到达目的地后,用Drag方法终止拖放,格式:对象。Drag vbEndDrag(值2),当然终止也可不用代码写明,只要抬起鼠标,拖放就会终止。
★ 窗体和图像框的paint事件:当对象在屏幕中被移动,改变尺寸或清除,且对象的AutoDraw属性为False时. 就会触发Paint事件, 
★ 通用事件一则:dragover事件:当用户使用鼠标拖动源对象,并在目标对象上移动时,目标对象上引发该事件。格式:
Private Sub Form_DragOver(Source As Control, X As Single, Y As Single, State As Integer)
End Sub
source和X以及Y好理解,source为源对象,X,Y为鼠标相对于该控件的位置。而state参数,返回源对象在目标对象内拖动的状态,为0表示源对象正向目标对象范围内拖动(拖入),为1表示源对象正向目标范围外拖动(拖出),为2表示源对象在目标范围内从一个位置移到了另一位置(移动)。注:它与DragDrop事件的区别在于:DragOver事件当源对象在目标对象范围内拖动过程中连续不断被触发,而DragDrop事件当源对象在目标对象范围内,同时松开鼠标时的一刹那触发。

  评论这张
 
阅读(1132)| 评论(1)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017