|
Scale
用以定义 Form、PictureBox 或 Printer 的坐标系统。不支持命名参数。
语法:
object.Scale (x1, y1) - (x2, y2)
object 可选的。一个对象表达式,其值为“应用于”列表中的一个对象。如果省略 object,则带有焦点的 Form
对象缺省为 object。
x1, y1 可选的。均为单精度值,指示定义 object
左上角的水平(x-轴)和垂直(y-轴)坐标。这些值必须用括号括起。如果省略,则第二组坐标也必须省略。
x2, y2 可选的。均为单精度值,指示定义 object
右下角的水平和垂直坐标。这些值必须用括号括起。如果省略,则第一组坐标也必须省略。
说明:
Scale 方法使您能够将坐标系统重置到所选择的任意刻度。Scale 对运行时的图形语句以及控件位置的坐标系统都有影响。
如果使用不带参数的 Scale(两组坐标都省略),坐标系统将重置为缇。
例:本示例使用 Move
方法设立一个自定义座标系统,使得一个条形图可以在窗体上画出。要检验此示例,可将本例代码粘贴到一个窗体的声明部分,然后按 F5
键并单击该窗体。
Private Sub Form_Click ()
Dim I, OldFontSize ' 声明变量。
Width = 8640: Height = 5760 ' 按缇设置窗体大小。
Move 100,100 ' 移动窗体起点。
AutoRedraw = -1 ' 打开AutoRedraw。
OldFontSize = FontSize ' 保持旧的字体大小。
BackColor = QBColor(7) ' 将背景设置为灰色。
Scale (0, 110)-(130, 0) ' 设定自定义座标系统。
For I = 100 To 10 Step -10
Line (0, I)-(2, I) ' 每隔 10 个单位划尺寸标记。
CurrentY = CurrentY + 1.5 ' 移动光标位置。
Print I ' Print scale mark value on left.
Line (ScaleWidth - 2, I)-(ScaleWidth, I)
CurrentY = CurrentY + 1.5 ' 移动光标位置。
CurrentX = ScaleWidth - 9
Print I ' 将尺寸标记值打印在右边。
Next I
' 画条形图。
Line (10, 0)-(20, 45), RGB(0, 0, 255), BF ' 第一个蓝色条。
Line (20, 0)-(30, 55), RGB(255, 0, 0), BF ' 第一个红色条。
Line (40, 0)-(50, 40), RGB(0, 0, 255), BF
Line (50, 0)-(60, 25), RGB(255, 0, 0), BF
Line (70, 0)-(80, 35), RGB(0, 0, 255), BF
Line (80, 0)-(90, 60), RGB(255, 0, 0), BF
Line (100, 0)-(110, 75), RGB(0, 0, 255), BF
Line (110, 0)-(120, 90), RGB(255, 0, 0), BF
CurrentX = 18: CurrentY = 100 ' 移动光标位置。
FontSize = 14 ' 放大标题尺寸。
Print "Widget Quarterly Sales" ' 打印标题。
FontSize = OldFontSize ' 还原字体大小。
CurrentX = 27: CurrentY = 93 ' 移动光标位置。
Print "Planned Vs. Actual" ' 打印子标题。
Line (29, 86)-(34, 88), RGB(0, 0, 255), BF ' 打印图例。
Line (43, 86)-(49, 88), RGB(255, 0, 0), BF
End Sub
ScaleX
用以将 Form,PictureBox 或 Printer 的宽度或高度值从一种 ScaleMode
属性的度量单位转换到另一种。不支持命名参数。
语法:
object.ScaleX (width, fromscale, toscale)
object.ScaleY (height, fromscale, toscale)
object 可选的。一个对象表达式,其值为“应用于”列表中的一个对象。如果省略 object,则带有焦点的 Form
对象缺省为 object。
width 必需的。为 object 指定被转换的度量单位的数量。
height 必需的。为 object 指定被转换的度量单位的数量。
fromscale 可选的。一个常数或数值,按照下列设置中的描述,指定 object 的 width 或 height
从哪一种坐标系统转换。fromscale 可取的数值与 ScaleMode 属性的数值加上 HiMetric 的新数值相同。
toscale 可选的。一个常数或数值,按照下列“设置值”中的描述,指定 object 的 width 或 height
转换到哪一种坐标系统。toscale 可取的数值与 ScaleMode 属性的数值加上 HiMetric 的新数值相同。
fromscale 和 toscale 设置值:
vbUser 0 用户定义:指示 object 的宽度和高度设置为自定义值。
vbTwips 1 缇(每逻辑英寸 1440 缇;每逻辑厘米 567 缇)。
vbPoints 2 磅(每逻辑英寸 72 点)。
vbPixels 3 像素 (显示器或打印机分辨率的最小单位)。
vbCharacters 4 字符(水平 = 每单位 120 缇,垂直 = 每单位 240 缇)。
vbInches 5 英寸
vbMillimeters 6 毫米
vbCentimeters 7 厘米
vbHimetric 8 HiMetric。如果省略 fromscale,则 HiMetric 为缺省值。
vbContainerPosition 9 决定控件位置。
vbContainerSize 10 决定控件大小。
说明:
ScaleX 和 ScaleY 方法按 fromscale 指定的度量单位取值(width 或 height),并将它转换为
toscale 指定的度量单位下相应的值。
也可以结合 PaintPicture 方法使用 ScaleX 和 ScaleY。
SetFocus
将焦点移至指定的控件或窗体。
语法:object.SetFocus
说明:
对象必须是 Form 对象、MDIForm 对象或者能够接收焦点的控件。调用 SetFocus
方法以后,任何的用户输入将指向指定的窗体或控件。
焦点只能移到可视的窗体或控件。因为在窗体的 Load 事件完成前窗体或窗体上的控件是不可视的,所以如果不是在 Form_Load
事件过程完成之前首先使用 Show 方法显示窗体的话,是不能使用 SetFocus 方法将焦点移至正在自己的 Load
事件中加载的窗体的。
也不能把焦点移到 Enabled 属性被设置为 False 的窗体或控件。如果已在设计时将 Enabled 属性设置为
False,必须在使用 SetFocus 方法使其接收焦点前将 Enabled 属性设置为 True。
ShowWhatsThis
显示 Windows 95 Help 所提供的“这是什么”弹出式窗口使用的 Help 文件中选定的一个主题。
语法:object.ShowWhatsThis
说明:
ShowWhatsThis 方法对于从应用程序上下文菜单中提供上下文敏感 Help非常有用。该方法显示语法中指定对象的
WhatsThisHelpID 属性所标识的主题。
例:该例子显示通过在为该按钮创建的上下文菜单中选取一个菜单命令的某个 CommandButton 控件的“这是什么”的 Help
主题。
设置窗体的 WhatsThisHelp 属性为 True。将 CommandButton
控件放在窗体上,用“菜单编辑器”创建一个菜单,使它具有顶层不可见的项 mnuBtnContextMenu 和子菜单
mnuBtnWhatsThis,子菜单标题为“这是什么?”
Private ThisControl As Control
Private Sub Command1_MouseUp(Button As Integer, Shift As
Integer, X As Single, Y As Single)
If Button = vbRightButton Then
Set ThisControl = Command1
PopupMenu mnuBtnContextMenu
End If
Set ThisControl = Nothing
End Sub
Private Sub mnuBtnWhatsThis_Click()
ThisControl.ShowWhatsThis
End Sub
|