?? 005.htm
字號(hào):
face="宋體" lang="ZH-CN">和</font>ShowModal<font face="宋體" lang="ZH-CN">的主要不同之處。 </p></font><p>1.5.1.2 <font face="宋體" lang="ZH-CN">指定自動(dòng)創(chuàng)建窗體 </p></font><p><font face="宋體" lang="ZH-CN"> 上面我們簡(jiǎn)單地生成了一個(gè)含</font>About<font face="宋體" lang="ZH-CN">框的雙窗體應(yīng)用程序,運(yùn)行時(shí),應(yīng)用程序啟動(dòng)時(shí)將自動(dòng)創(chuàng)建第二個(gè)窗體。窗體保持隱蔽狀態(tài),但仍然占用</font>Windows<fontface="宋體" lang="ZH-CN">的資源。在大型應(yīng)用程序中,有時(shí)不希望在應(yīng)用程序加載時(shí)自動(dòng)創(chuàng)建所有窗體。</font>Delphi<fontface="宋體" lang="ZH-CN">可以指定哪些窗體被自動(dòng)創(chuàng)建。</font></p><p><font face="宋體" lang="ZH-CN"> 選用</font>Project|Options<fontface="宋體" lang="ZH-CN">,</font>Delphi<font face="宋體" lang="ZH-CN">顯示</font>Projectoptions<font face="宋體" lang="ZH-CN">對(duì)話框。如果</font>Forms<font face="宋體"lang="ZH-CN">不是當(dāng)前頁(yè),按動(dòng)下標(biāo)簽使之可見(jiàn)。如圖</font>1.12<fontface="宋體" lang="ZH-CN">所示:</font></p><p><font face="宋體" lang="ZH-CN"> 圖示為</font>Delphi<fontface="宋體" lang="ZH-CN">裝載的</font>TextEdit<font face="宋體" lang="ZH-CN">例程</font>(...\Delphi2.0\Demos\doc\TextEdit.dpr)<font face="宋體" lang="ZH-CN">。在</font>MainForm<fontface="宋體" lang="ZH-CN">正文框中輸入主窗體的名字。當(dāng)應(yīng)用程序啟動(dòng)時(shí),主窗體自動(dòng)打開(kāi)并獲取輸入焦點(diǎn)。對(duì)</font>MDI<fontface="宋體" lang="ZH-CN">應(yīng)用,主窗體的</font>FormStyle<font face="宋體"lang="ZH-CN">屬性必須設(shè)置為</font>fsMDIForm<font face="宋體" lang="ZH-CN">。在</font>Auto-createdForms<font face="宋體" lang="ZH-CN">列表框中列出了在啟動(dòng)時(shí)自動(dòng)創(chuàng)建的窗體,缺省時(shí)工程文件的所有窗體都在此列中。</font></p><p><font face="宋體" lang="ZH-CN"> 如果不需要自動(dòng)創(chuàng)建窗體,使用箭頭按鈕把窗體移動(dòng)到</font>AvailableForms<font face="宋體" lang="ZH-CN">列表框中。自動(dòng)創(chuàng)建的窗體可以用</font>Show<fontface="宋體" lang="ZH-CN">方法進(jìn)行顯示,而不自動(dòng)創(chuàng)建時(shí),必須編程實(shí)現(xiàn)窗體的顯示。在</font>TextEdit<fontface="宋體" lang="ZH-CN">工程中,定義一個(gè)</font>TEditForm<font face="宋體"lang="ZH-CN">類(lèi)型的變量</font>EditForm<font face="宋體" lang="ZH-CN">,使用了以下的代碼顯示第二個(gè)窗體:</font></p><p>Begin</p><p>EditForm := TeditForm.Create(Self);</p><p>EditForm.Open(OpenFileDialog.Filename);</p><p>EditForm.Visible := True;</p><p>End;</p><p><font face="宋體" lang="ZH-CN">也即,必須使用</font>Create<font face="宋體"lang="ZH-CN">方法創(chuàng)建窗體,同時(shí)將窗體的</font>Visible<font face="宋體"lang="ZH-CN">屬性設(shè)為真。 </p></font><p>1.5.2 <font face="宋體" lang="ZH-CN">使用工程管理器</font>ProjectManager<font face="宋體" lang="ZH-CN"> </font></p><p><font face="宋體" lang="ZH-CN"> 當(dāng)窗體的數(shù)目逐步增加時(shí),跟蹤窗體以及與之相連的庫(kù)單元代碼就變得比較煩瑣。用</font>Delphi<fontface="宋體" lang="ZH-CN">提供的工程管理器</font>Project Manager<fontface="宋體" lang="ZH-CN">可以使得管理各種窗口更為方便。</p><p>1.5.2.1 工程文件的組成 </p></font><p><font face="宋體" lang="ZH-CN"> 工程</font>(project)<font face="宋體" lang="ZH-CN">是整個(gè)應(yīng)用程序的源文件集合,這樣的文件一共有三種:</font></p><p> 1.<font face="宋體" lang="ZH-CN">一個(gè)包含主程序部分的工程文件,用以驅(qū)動(dòng)由</font>Delphi<fontface="宋體" lang="ZH-CN">創(chuàng)建的</font>Windows<font face="宋體" lang="ZH-CN">程序,擴(kuò)展名為</font>.DPR<fontface="宋體" lang="ZH-CN">。這是在用戶的工程被裝載時(shí)就運(yùn)行的全局應(yīng)用程序文件,它的名字出現(xiàn)在</font>ProjectManager<font face="宋體" lang="ZH-CN">的標(biāo)題條上。工程文件一般是</font>Delphi<fontface="宋體" lang="ZH-CN">自動(dòng)創(chuàng)建的,用</font>View|Project Source<fontface="宋體" lang="ZH-CN">可以調(diào)出該工程的源文件,如果需要,可以對(duì)工程源文件進(jìn)行編輯。</font></p><p> 2.<font face="宋體" lang="ZH-CN">一個(gè)或多個(gè)窗體文件,它們含有相應(yīng)的庫(kù)單元文件。窗體文件的擴(kuò)展名是</font>.DFM<fontface="宋體" lang="ZH-CN">。這些文件含裝在窗體上的控制部件。在</font>Delphi<fontface="宋體" lang="ZH-CN">中這樣的文件是在用戶設(shè)計(jì)界面的時(shí)候由</font>Delphi<fontface="宋體" lang="ZH-CN">自動(dòng)生成的,而且不能編輯。在</font>Delphi<fontface="宋體" lang="ZH-CN">中,一個(gè)應(yīng)用程序至少需要一個(gè)窗體。</font></p><p> 3. Object Pascal<font face="宋體"lang="ZH-CN">庫(kù)庫(kù)單元文件。</font> <font face="宋體" lang="ZH-CN">它們的擴(kuò)展名為</font>.PAS<fontface="宋體" lang="ZH-CN">。窗體的庫(kù)單元文件包含了程序部分,用以控制窗體的行為。在一個(gè)工程中,還要包含附加庫(kù)和被應(yīng)用程序其它部分調(diào)用的支持子程序。</font>uses<fontface="宋體" lang="ZH-CN">子句中包含的標(biāo)準(zhǔn)庫(kù)單元文件包含了支持可視窗體及其控制的對(duì)象聲明。這些庫(kù)單元也包含了用于激活窗體的事件處理過(guò)程程序。 </p></font><p>1.5.2.2 <font face="宋體" lang="ZH-CN">使用</font>Project Manager<fontface="宋體" lang="ZH-CN">進(jìn)行工程管理 </p></font><p><font face="宋體" lang="ZH-CN"> 選用</font>View|Project Manager<font face="宋體" lang="ZH-CN">,會(huì)調(diào)出</font>ProjectManager<font face="宋體" lang="ZH-CN">窗口。</font></p><p> Project Manager<font face="宋體"lang="ZH-CN">主體部分列出了庫(kù)單元以及相關(guān)聯(lián)的窗體的路徑,當(dāng)庫(kù)單元和工程在同一目錄下時(shí),路徑不再顯示。</font>ProjectManager<font face="宋體" lang="ZH-CN">包含了應(yīng)用程序的所有源文件和窗口。并不是每一個(gè)庫(kù)單元都擁有一個(gè)相關(guān)聯(lián)的窗體。</font>ProjectManager<font face="宋體" lang="ZH-CN">可以作為工程的一個(gè)簡(jiǎn)捷目錄。在列出的任何一個(gè)窗體或庫(kù)單元上雙擊鼠標(biāo)左鍵,</font>Delphi<fontface="宋體" lang="ZH-CN">就會(huì)產(chǎn)生此對(duì)象的代碼編輯器。</font></p><p> Project Manager <font face="宋體"lang="ZH-CN">窗口上有增加、刪除對(duì)象以及查看對(duì)象的加速按鈕。</font>Options<fontface="宋體" lang="ZH-CN">加速鍵能夠打開(kāi)前文所述的</font>Project Options<fontface="宋體" lang="ZH-CN">對(duì)話框。如果在</font>Project Manager<font face="宋體"lang="ZH-CN">打開(kāi)時(shí)編輯了工程各文件的源代碼,可單擊</font>Update<fontface="宋體" lang="ZH-CN">加速條按鈕刷新對(duì)象列表。 </p></font><p>1.5.3 <font face="宋體" lang="ZH-CN">使用窗體樣板和對(duì)話框?qū)<摇?lt;/p></font><p><font face="宋體" lang="ZH-CN"> 在前文的例程中,我們創(chuàng)建了一個(gè)簡(jiǎn)單的</font>About<font face="宋體"lang="ZH-CN">框。在很多應(yīng)用程序中,都會(huì)用到這種進(jìn)行信息提示或表示版本信息的對(duì)話框。</font>Delphi<fontface="宋體" lang="ZH-CN">的設(shè)計(jì)思想是軟件可重用,所以系統(tǒng)</font>phi<fontface="宋體" lang="ZH-CN">已經(jīng)載入了一些用戶可重復(fù)應(yīng)用的窗體樣板。使用窗體樣板,可以簡(jiǎn)單地生成各種對(duì)話框,節(jié)省了大量的重復(fù)工作。 </p></font><p>1.5.3.1 <font face="宋體" lang="ZH-CN">使用窗體樣板創(chuàng)建窗體 </p></font><p><font face="宋體" lang="ZH-CN"> 創(chuàng)建一個(gè)新工程時(shí),</font>Delphi<font face="宋體" lang="ZH-CN">為用戶創(chuàng)建了一個(gè)新的空窗體。如果需要使用一個(gè)窗體樣板,向工程中增加一個(gè)窗體。選用</font>File|New<fontface="宋體" lang="ZH-CN">,</font>Delphi<font face="宋體" lang="ZH-CN">即會(huì)顯示</font>NewItems<font face="宋體" lang="ZH-CN">對(duì)話框。在</font>Forms<font face="宋體"lang="ZH-CN">頁(yè)上,從樣板庫(kù)中選擇中意的新窗體增加到工程中。例如,</font>Delphi<fontface="宋體" lang="ZH-CN">提供了</font>About Box<font face="宋體" lang="ZH-CN">樣板。如果選擇它,</font>About<fontface="宋體" lang="ZH-CN">對(duì)話框就增加到工程中,用戶只需加入自己的各種信息即可,這樣就簡(jiǎn)化了工作。同樣,要建立一個(gè)對(duì)話框窗口,在</font>Dialogs<fontface="宋體" lang="ZH-CN">頁(yè)上,選用所需的對(duì)話框樣板,可以簡(jiǎn)便地建立起所需的對(duì)話框窗口。</font></p><p>1.5.3.2 <font face="宋體" lang="ZH-CN">存儲(chǔ)自己的窗體樣板 </p></font><p><font face="宋體" lang="ZH-CN"> 您可以在樣板庫(kù)中存儲(chǔ)自己的窗體樣板。首先創(chuàng)制一個(gè)窗體的樣本,在窗體區(qū)域中單擊鼠標(biāo)的右鍵,可以調(diào)出窗體的加速菜單。選用</font>AddTo Repository...<font face="宋體" lang="ZH-CN">,將彈出對(duì)話框。</font></p><p><font face="宋體" lang="ZH-CN"> 在</font>Forms<fontface="宋體" lang="ZH-CN">列表框中,選擇想要?jiǎng)?chuàng)建為樣板的窗體。在</font>Title<fontface="宋體" lang="ZH-CN">輸入框中輸入想要在樣本庫(kù)內(nèi)圖標(biāo)下出現(xiàn)的文本。在</font>Description<fontface="宋體" lang="ZH-CN">區(qū),輸入關(guān)于樣板的詳細(xì)說(shuō)明。這樣在瀏覽樣本庫(kù)時(shí),在狀態(tài)行上會(huì)顯示這段文字以進(jìn)行提示。可以選擇一個(gè)圖標(biāo)作為新窗體樣板的圖標(biāo),按動(dòng)</font>Browse<fontface="宋體" lang="ZH-CN">按鈕,選擇一個(gè)現(xiàn)有圖標(biāo)來(lái)代表新的窗體樣板。否則將使用按鈕左方的缺省窗體圖標(biāo)。按</font>OK<fontface="宋體" lang="ZH-CN">按鈕,</font>Delphi<font face="宋體" lang="ZH-CN">會(huì)要求您確認(rèn)將窗體存儲(chǔ)為樣板。</font></p><p><font face="宋體" lang="ZH-CN"> 再次打開(kāi)</font>NewItems<font face="宋體" lang="ZH-CN">對(duì)話框,您會(huì)發(fā)現(xiàn)您的窗體已經(jīng)被存儲(chǔ)成一個(gè)窗體樣板。 </p></font><p>1.5.3.3 <font face="宋體" lang="ZH-CN">使用對(duì)話框?qū)<?lt;/font>DialogExpert </p><p><font face="宋體" lang="ZH-CN"> 對(duì)話框樣板呈現(xiàn)了友好界面的被保存對(duì)話框,而對(duì)話框?qū)<覅s能根據(jù)用戶提供的信息,智能地創(chuàng)建復(fù)雜的對(duì)話框。</font></p><p><font face="宋體" lang="ZH-CN"> 選用</font>File|New...<fontface="宋體" lang="ZH-CN">,在</font>New|Items<font face="宋體" lang="ZH-CN">的</font>Dialog<fontface="宋體" lang="ZH-CN">頁(yè)選用</font>Dialogs Expert<font face="宋體" lang="ZH-CN">,</font>Delphi<fontface="宋體" lang="ZH-CN">將提示回答各種問(wèn)題,以便于建立復(fù)雜的對(duì)話框。</font></p><p>1.5.4 <font face="宋體" lang="ZH-CN">使用工程樣板和應(yīng)用專(zhuān)家 </p></font><p> Delphi<font face="宋體"lang="ZH-CN">的工程樣板提供預(yù)先設(shè)計(jì)的工程來(lái)作為應(yīng)用程序開(kāi)發(fā)的起點(diǎn)。而應(yīng)用專(zhuān)家則允許用戶按照一定的模式來(lái)創(chuàng)建一個(gè)應(yīng)用程序。 </p></font><p>1.5.4.1 <font face="宋體" lang="ZH-CN">使用工程樣板 </p></font><p><font face="宋體" lang="ZH-CN"> 當(dāng)您通過(guò)一個(gè)工程樣板來(lái)開(kāi)始一個(gè)工程時(shí),除了空白工程樣板外,都會(huì)被要求指定一個(gè)唯一的子目錄即工程目錄</font>ProjectDirectory<font face="宋體" lang="ZH-CN">,用來(lái)存儲(chǔ)新的工程。如果您指定一個(gè)不存在的目錄,</font>Delphi<fontface="宋體" lang="ZH-CN">會(huì)幫助您生成它。您可以通過(guò)加入新的窗體和程序庫(kù)單元來(lái)修改它,或不加修改地直接利用,而只是加入您的事件處理過(guò)程。無(wú)論您如何修改,您所作的修改只影響到打開(kāi)的工程,原先的工程樣板不會(huì)受到影響,可再次被利用。</font></p><p><font face="宋體" lang="ZH-CN"> 選用</font>File|New<font face="宋體" lang="ZH-CN">,在</font>New Items<fontface="宋體" lang="ZH-CN">對(duì)話框中選用</font>Projects<font face="宋體"lang="ZH-CN">頁(yè),可以選擇將</font>MDI<font face="宋體" lang="ZH-CN">、</font>SDI<fontface="宋體" lang="ZH-CN">、</font>Windows 95 Logo<font face="宋體" lang="ZH-CN">等應(yīng)用程序作為缺省的工程類(lèi)型,點(diǎn)動(dòng)所需工程的圖標(biāo),使之高亮度顯示,然后按</font>OK<fontface="宋體" lang="ZH-CN">按鈕。如圖</font>1.17<font face="宋體" lang="ZH-CN">所示。在接下來(lái)的</font>SelectDictionary<font face="宋體" lang="ZH-CN">對(duì)話框中指定一個(gè)用來(lái)包含新的工程文件的目錄,則一個(gè)工程樣板的副本在指定的目錄中打開(kāi)。</font></p><p>1.5.4.2 <font face="宋體" lang="ZH-CN">使用應(yīng)用專(zhuān)家</font>Application Expert </p><p><font face="宋體" lang="ZH-CN"> 一個(gè)應(yīng)用專(zhuān)家就是一個(gè)應(yīng)用程序,它會(huì)依照您在一系列對(duì)話框中所設(shè)置的選項(xiàng)值來(lái)產(chǎn)生一個(gè)工程。</font></p><p><font face="宋體" lang="ZH-CN"> 如果您想在打開(kāi)一個(gè)工程時(shí),利用應(yīng)用專(zhuān)家來(lái)取代工程樣板而成為缺省值,則使用</font>File|New<fontface="宋體" lang="ZH-CN">,在</font>New Items<font face="宋體" lang="ZH-CN">的</font>Projects<fontface="宋體" lang="ZH-CN">頁(yè)上選用</font>Applcation Expert<font face="宋體"lang="ZH-CN">。這樣,雙擊它的圖標(biāo),會(huì)彈出一系列對(duì)話框提問(wèn),要求您選擇您的工程是否需要一個(gè)標(biāo)準(zhǔn)的</font>Windows95<font face="宋體" lang="ZH-CN">對(duì)話框、含有哪些菜單、加速條等。圖</font>1.18<fontface="宋體" lang="ZH-CN">是使用應(yīng)用專(zhuān)家后出現(xiàn)的第一個(gè)對(duì)話框。</font></p><p>Delphi <font face="宋體" lang="ZH-CN">會(huì)要求您輸入您的工程文件名及它存儲(chǔ)的唯一目錄,并提示您選擇應(yīng)用程序是否使用</font>MDI<fontface="宋體" lang="ZH-CN">窗口、是否含有狀態(tài)行、提示等。選項(xiàng)設(shè)置完畢,按動(dòng)</font>Finish<fontface="宋體" lang="ZH-CN">按鈕,</font>Application Expert<font face="宋體"lang="ZH-CN">即按照您的要求,建立起一個(gè)可以直接運(yùn)行的工程文件。</font></p><hr width="94%"></TD><TD CLASS="tt3" VALIGN="bottom" width="8%" ><strong><A HREF="006.htm"><FONT style="FONT-SIZE: 9pt">后一頁(yè)</font></A><BR><A HREF="004.htm"><FONT style="FONT-SIZE: 9pt">前一頁(yè)</font></A><BR><A HREF="index.html"><FONT style="FONT-SIZE: 9pt">回目錄</font></A><BR></strong></TD></TR></table></BODY></HTML>
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -