六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

VB技巧擴展

[摘要]我們在設計一個VB窗體時, 常常放上許多控件, 為了使這些控件看上去整整齊齊,我們不得不設置一大堆Left、 Top、 Height、 Width屬性, 您是否已經感到厭煩并想轉向Powerbuil...
     我們在設計一個VB窗體時, 常常放上許多控件, 為了使這些控件看上去整整齊齊,我們不得不設置一大堆Left、 Top、 Height、 Width屬性, 您是否已經感到厭煩并想轉向Powerbuilder或 Delphi等別急, 讓我們現在就來擴展一下VB的功能。  

VB4.0提供了一個新功能:Add-Ins, 利用這一功能我們就可以把自己的程序加到VB4的系統菜單Add-Ins里去, 作為VB的擴展功能。 我們設計的程序將具有以下功能: 選取窗體上某些控件后, 通過菜單選取, 使它們大小相同、間距相同、邊緣對齊等等。有了這些功能,我們設計界面時就能節省大量時間,大大提高工作效率。限于篇幅,這里只介紹其中一個功能:使所選取控件從左到右大小相同。理解了這段程序,其它功能就很容易實現了。 首先建一個新項目:alignment.mark,不需要任何窗體,在Tools菜單里選Project Options, 將 Project Name設為\Exam”,將Start Mode設為Object Application后退出。然后在菜單Ins ert里選取ClassModule,建立一個新類,屬性設置如下:  

Name="HSizeAlign";Creatable=False;Public=True 輸入以下程序:  
Public VBInstance As Object ’當前所運行的VB
Private TheseControls As Object
Private Control As Onject ’控件對象變量
Private AllHeight As Long
Private AllWidth As Long
Private MinLeft As Long ’標記最左邊界值
Public Sub AfterClick()
MinLeft=99999 ’設一極大初值
Set ThereControls = VBInstance.ActiveProject.Ac - tiveForm.SelectedControlTemplates
For Each Control In TheseControls
If Control.Properties("Left")<MinLeft Then
AllHeight=Control.Properties("Height")
AllWidth=Control.Properties("Width")
MinLeft=Control.Properties("Left")
End If
Next
For Each Control In TheseControls
Control.Properties("Height")=AllHeight
Control.Properties("Width")=AllWidth
Next
End Sub

再定義一個新類,屬性設置如下:
Name="Alignment";Creatable=True;Public=True
Dim ThisInstance As Object
Dim HSizeAlignMenu As Object
Dim HSizeAlignHandler As New HSizeAlign
Dim HSizeConnectCookie As Long
Sub ConnectAddIn(VBInstance As Object)
’加入菜單項,進行連接
Set ThisInstance=VBInstance
Set HSizeAlignMenu=ThisInstance.AddinMenu.
MenuItems.Add("HSize Alignment")
Set HSizeAlignHandler.VBInstance=ThisInstance
HSizeConnectCookie=HSizeAlignMenu.ConnectEvents
(HSizeAlignHandler)
End Sub
Sub DisconnectAddIn(Mode As Integer)
’解除連接,刪除菜單項
HSizeAlignMenu.DisconnectEvents HSizeConnect-Cookie
ThisInstance.AddinMenu.MenuItems.Remove HSizeAlignMenu
End Sub
再加入一個Module,輸入以下程序:
Declare Function WritePrivateProfileString Lib
"KERNEL"(ByVal AppName$,ByVal KeyName$,ByVal keydefault$,ByVal FileName$)
Declare Function GetPrivateProfileString Lib
"KERNEL"(ByVal AppName$,ByVal KeyName$,ByVal keydefault$,ByVal ReturnString$,By
Val NumBytes As Integer,ByVal FileName$)
’以上說明可用API Text Viewer拷貝
Sub Main()
Dim ReturnString As String
Section$="Add-Ins16"
ReturnString=String$(255,Chr$(0))
ErrCode=GetPrivateProfileString(Section$,
"Exam.Alignment","NotFound",ReturnString,Len(ReturnString)+1,"VB.INI")
If Left(ReturnString,InStr(ReturnString,Chr(0))-1)="NotFound"Then
ErrCode=WritePrivateProfileString%(Section$,"Exam.Alignment","0","VB.INI")
End If
End Sub

’Exam.Alignment里,\Exam”為項目名,\Alignment”為與Add-In菜單連接的類名。以上程序編譯運行后,在VB菜單Add-Ins里選取Add-In Manager,將彈出一對話框,選取Exam. Alignment后退出,Add-Ins菜單里就多了一項HSize Alignment;使用時先選取所需排列控件 ,然后選此菜單項即可。


標簽:VB技巧擴展 
主站蜘蛛池模板: 日韩在线不卡视频 | 亚洲精品国产综合久久一线 | 永久免费观看午夜视频在线 | 日本久久免费大片 | 青青草国产精品久久 | 色噜噜狠狠色综合中国 | 日本护士后进式猛烈动态图片 | 日本亚洲乱码中文字幕影院 | 色人在线| 婷婷综合激情 | 日本中文字幕视频 | 欧美一欧美一区二三区性 | 午夜视频在线观看一区 | 亚洲国产欧美在线成人aaaa | 色橹橹欧美在线观看视频高清 | 日日夜夜免费精品视频 | 五月婷婷丁香色 | 做a的视频免费 | 屁屁网站在线观看www | 污视频在线免费观看 | 色噜噜狠狠狠狠色综合久一 | 午夜在线观看福利 | 青青国产成人久久91网 | 亚洲欧美无人区乱码 | 日本韩国在线视频 | 日韩美女一区 | 色综合天天综久久久噜噜噜久久〔 | 日韩专区亚洲国产精品 | 日韩黄色大全 | 亚洲国产精品日韩专区avtube | 日本在线日本中文字幕日本在线视频播放 | 完整欧美一级淫片免费看 | 亚洲综合色区中文字幕 | 日韩精品亚洲一级在线观看 | 亚洲欧美日韩激情在线观看 | 色天使色婷婷在线影院亚洲 | 日本红怡院亚洲红怡院最新 | 婷婷97狠狠的狠狠的爱 | 日本免费一区二区三区看片 | 中文字幕一区二区在线视频 | 日本欧美国产精品第一页久久 |