創建標准表單
假設有一個你要經常使用的表單,比如說,在表單的左上角有一個日歷控件。為了更容易地建立這種表單,可以按照你需要的建立一個實例,放置上日歷控件,設置好它的屬性,等等。
然後,將這個表單保存在模板目錄下,比如:C:ProgramFilesMicrosoftVisualStudioVb98TemplateForms。
現在,從工程菜單中選擇“添加表單”,就出現了你剛才建立表單的一個選擇。當添加了這個類型的表單後,原本設置好的屬性也就存在了。
關於.FRX文件
什麼是FRX文件?怎樣編輯它們?沒有它們能夠正常工作嗎?
VisualBasic在FRX文件中保存二進制信息,比如,如果你在設計時間中設置了一個表單的圖形屬性,VisualBasic就將這個圖形保存在FRX文件中。如果這時刪除了FRX文件,再次打開工程文件時,就會出現錯誤,並且,所有的相關信息就會丟失了。
如果在設計時間中替換了表單的圖形屬性,VisualBasic將在FRX文件中做相應的修改。但是,單獨地編輯FRX文件卻不是推薦的,因為確實沒有方法。
沒有這些FRX文件實際上不會發生任何事情,除非在設計時需要轉載二進制信息,比如圖形文件。你可以將圖形和其他信息保存在一個資源文件中,然後在運行時調用它,或者,將這些信息單獨存放,再在運行時調用。這個方法不會給你帶來再多的好處,因為程序運行時,這些單獨的文件都必須要存在。相反,如果讓VisualBasic保存這些信息到FRX文件中,當編譯後運行時,這些信息都將被包含在一個獨立的EXE文件中了。
判斷表單是否已經被裝載
你可以使用表單集合來判斷含有一定名字的表單是否已經被裝載。方法是:循環遍歷表單集合,比較其中每一個項目與目標名字是否匹配:
注釋:Returnaformbynameifitisloaded.
PrivateFunctionFindForm(ByValform_nameAsString)AsForm
DimiAsInteger
注釋:Assumewewillnotfindit.
SetFindForm=Nothing
注釋:Searchtheloadedforms.
Fori=0ToForms.Count-1
IfForms(i).Name=form_nameThen
注釋:Wefoundit.Returnthisform.
SetFindForm=Forms(i)
ExitFor
EndIf
Nexti
EndFunction
表單為什麼不在任務欄出現?
在編程中調試運行時,有時發現表單不在任務欄出現,這是怎麼造成的?可能的原因有以下幾種:
1、ShowInTaskBar被設置為False
2、表單是MDI子表單
3、表單的BorderStyle是固定大小的對話框
4、表單的BorderStyle是固定大小的ToolWindow
5、表單的BorderStyle是可變大小的ToolWindow->