Images應用程序中的事件
Image應用程序對事件的響應如下:
1.每一個Image控件的Click事件使Shape控件的Left屬性與它自己的Left屬性相同,并將圖形移到Image的頂端。
2.調用PictureBox的Cls方法清除StatusBar的當前標題。
3.調用PictureBox的PRint方法在StatusBar上打印新標題。
Image控件Click事件的代碼如下:
PrivateSubimgHeart_Click()
shpCard.Left=imgClub.LeftpicStatus.Cls
picStatus.Print"Selected:Club"
shpCard.Visible=True
EndSub
注意,Click事件代碼中第一行利用=操作符為Shape控件的Left屬性賦一個值(讓它等于Image控件的Left屬性)。下面兩行調用方法,因而不需要操作符。在第三行中,值("Selected:Club")是Print方法的一個參數。
該應用代碼中還有一行很重要;它在FormLoad事件中。
shpCard.Visible=False
將Shape控件的Visible屬性設為False,Shape控件被隱藏起來直至單擊第一幅Image。
在Image控件Click事件的最后一步將Visible屬性設為True。
詳細信息關于屬性、方法和事件詳細信息,請參閱第五章“編程基礎”。
附加控件
VisualBasic工具箱還包含幾個其它的標準控件。有些控件可用來處理外部數據庫中的大量數據。有些控件可用來訪問Windows文件系統。還有其它一些控件難以分類,但卻十分有用。
在VisualBasic應用程序中還可使用ActiveX控件,以前稱為自定義控件或OLE控件,用法與使用標準控件一樣。VisualBasic的專業版和企業版中的若干ActiveX事件同樣具有創建自定義控件的功能??梢韵胂?,加上大量廠商制作的附加ActiveX控件,幾乎可以完成任何工作。
詳細信息關于使用ActiveX控件的詳細信息,請參閱第四章“工程的管理”。
數據訪問控件
現代商業中,大多數信息存放于一個或多個中央數據庫中。VisualBasic提供了多種數據訪問控件,可以訪問多數流行的數據庫,如Microsoftaccess和SQL服務器。
1.ADOData控件用來連接數據庫。可把它看成是數據庫與窗體中其它控件之間的一個管道線。Data控件的屬性、方法和事件允許從應用程序內部定位和處理外部數據。
2.DataList控件與ListBox控件相似。DataList控件與ADOData控件一起使用時,它將自動被來自外部數據庫某一字段的數據清單填充。
3.DataCombo控件如同DBList和TextBox的組合。TextBox區域內選中的文本可以編輯,變更出現在底層數據庫中。
4.DataGrid控件顯示在網格或表中的數據。與ADOData控件一起使用時,它顯示來自于外部數據庫多個字段的完全可編輯數據。
5.MicrosoftHierarchicalFlexGrid控件是唯一能顯示數據的多個視圖的控件??砂阉醋骶W格和樹或大綱控件的組合。運行時,用戶可重新安排行和列以提供數據的不同視圖。
詳細信息關于Data控件的詳細信息,請參閱第七章“使用VisualBasic的標準控件”。
文件系統控件
VisualBasic提供三個控件以增加應用程序中的文件處理能力。通常,這些控件在一起使用以查看驅動器、目錄和文件。有一些特殊的屬性和事件使它們相互聯系。
DriveListBox控件看起來像ComboBox。它提供下拉式驅動器清單,用戶可以從中作出選擇。
DirListBox與ListBox控件相似,但它具有顯示當前所選驅動器目錄清單的內置能力。
FileListBox控件看起來像顯示所選目錄的文件名清單的ListBox。
注意這些控件主要是為在早期VisualBasic版本中創建的應用程序的向下兼容性而提供的。CommonDialog控件提供處理文件訪問的簡單方法。關于CommonDialog控件的詳細信息,請參閱本章后面的“其它控件”。
其它控件
VisualBasic還提供了其它幾個標準控件。每個控件都服務于唯一的目的。
Timer控件可以在應用中以重復時間間隔產生一個事件。這對不需要與用戶交互的代碼的執行非常有用。
OLE容器控件很容易為應用程序增加鏈接和嵌入等功能。通過OLE容器控件,可以提供對任何OLE——可用的應用程序(如MicrosoftExcel、Word和其它許多應用程序)的功能的訪問,。
CommonDialog控件在應用程序中增加內置對話框,用來選擇文件、顏色、
注意只有不包含任何可接收焦點的控件的窗體,才能接收焦點。
控件的Validate事件
控件也有一個Validate事件,在控件失去焦點前發生。然而,僅當即將接受焦點的控件的CausesValidation屬性設置為True時該事件發生。在許多情況下,由于Validate事件發生在失去焦點之前,因此對數據驗證來說它比LostFocus事件更適用。詳細信息,請參閱第七章“使用VisualBasic標準控件”中的“通過限制焦點驗證控件數據”。
不能接受焦點的控件
有些控件,例如輕量控件,不能接受焦點。輕量控件包含下面的控件:
Frame控件
Image控件
Label控件
Line控件
Shape控件
此外,運行時不可見的控件,如Timer控件,不能接受焦點。
新聞熱點
疑難解答