?
單元二、基本的windows程式
2.1 選單製作
- 開啟一個新個專案,選取 File|New Application。
- 加入
MainMenu元件。
- 雙擊
MainMenu元件以開啟選單設計工具。
- 輸入選單的名稱:於Caption處填入『檔案(&F)』,將特性Name處改為「miFile1」。
- 接著點選選單設計工具中檔案下方的新方塊,於
Caption處填入『開新檔案(&N)』,將特性Name處改為「miNew1」。
- Ins鍵:在選單的左側或選項的上方加入一個新的選項。
- Del鍵:刪除目前的選項。
- Ctrl+Del鍵:刪除一個空白的選項。
- Ctrl+→鍵:插入一個新的巢狀選單。
Caption |
Name |
ShortCut |
檔案 (&F) |
miFile1 |
|
開新檔案 (&N) |
miNew1 |
|
開啟舊檔 (&O) |
miOpen1 |
Ctrl+O |
儲存檔案 (&S) |
miSave1 |
Ctrl+S |
另存新檔 (&A) |
miSaveAs1 |
Ctrl+A |
- |
N1 |
|
列印 (&P) |
miPrint1 |
Ctrl+P |
印表機設定 …(&R) |
miPrisntSetup1 |
|
- |
N2 |
|
結束 (&X) |
miExit1 |
Ctrl+X |
(Accelerator key):在該快速鍵的字母前加上「&」符號,例如:檔案(&F)。
(Shortcut):在選項的ShortCut特性中指定按鍵組合。
指定分隔線:在
Caption特性中輸入「-」。
Insert From Template…」。我們可以先插入樣版中的選項後,再增減選項來符合我們的需要。
- 於檔案選單右邊加編輯選單。在選單設計工具中,按滑鼠右鍵,選「
Insert From Template…」,然後選「編輯功能表」按OK插入。
於編輯選單右邊加檢視選單,並按下表加入兩個選項。
Caption |
Name |
Checked |
顯示工具列 (&T) |
miViewToolsBar |
True |
顯示狀態列 (&S) |
miViewStatusBar |
True |
2.2 製作工具列
2.2.1 傳統方法製作工具列
- 加入Bevel元件(在Additional頁次或由Alt_VL開啟component list視窗),Align = alTop,Height=4,Shape = bsTopLine。
- 加入
Panel元件,Align = alTop,BevelOut = bvNone,清除Caption。
- 加入
ScrollBox,Align = alClient,Color = clWindow。
- 加入
8個SpeedButton,並按照下表更改其特性。其中Glyph特性所需的BMP檔可以在 Delph 3/Images/Buttons目錄中找到。
Name |
Left |
Top |
Enabled |
Glyph |
sbNew |
0 |
2 |
True |
FILENEW.BMP |
sbOPen |
25 |
2 |
True |
FILEOPEN.BMP |
sbSave |
50 |
2 |
True |
FILESAVE.BMP |
sbCut |
85 |
2 |
False |
CUT.BMP |
sbCopy |
110 |
2 |
False |
COPY.BMP |
sbPaste |
135 |
2 |
False |
PASTE.BMP |
sbPrint |
170 |
2 |
True |
PRINT.BMP |
sbHelp |
195 |
2 |
True |
HELP.BMP |
2.2.2 使用工具列元件製作工具列
- Button (Style = tbsButton): 一般按鈕。
- Separator:不會對滑鼠產生反應。
- Divider:類似Separator,用來在按鈕間畫出分隔線。
- Check:按下時會停再按下的狀態。
- DropDown:按下時會把DropdownMenu所指定的選單顯示出來。
- 按右鍵選New Button來製作按鈕。使用New Button加入三個Button、一個Separator,然後在三個Button、一個Separator,最後在兩個Button。
- 將工具列的
Flat特性設成True。(此為新式按鈕的設定,當滑鼠經過按鈕時會自動將匡邊顯示出來)
- 加入
ImageList元件。
- 雙擊
ImageList來啟動ImageList編輯器,將前面八個按鈕的圖像依序加入。。(當編輯器要求將其分成兩個圖檔時,回答要,然後將無作用之圖形刪除)
- 將此
ImageList指定到工具列的Image特性中。
- 將
Cut、Copy、Paste這三個Button的Enabled特性設成False。
2.3 製作狀態列
2.4 回應Windows的事件
- 撰寫事件處理程式:先找到該事件相關的物件,然後找到要處理的事件,最後在該事件處加上所要處理的程式碼。步驟如下:
- 選取要處理的元件。
- 到Event頁次找到要處理的事件,雙擊右側的特性欄。此時,Delphi將自動產生事件處理程式的頭尾,並在該類別的宣告部份加上一行該處理程式的宣告。
- 加入該處理程式的程式碼。
2.4.1為檔案選單結束選項加上事件處理程式
- 開啟選單設計工具,選取結束的選項。
- 在Events頁次選到OnClick事件,雙擊右邊的空白處以產生事件處理程式。
- 在該程式中加入表格物件的
Close方法。
Procedure TForm1.Exit1Click(Sender: TObject); Begin Close; end; |
2.4.2檢視選單的事件處理程式
- 在選單設計工具中找到檢視選單,雙擊第一個項目『顯示工具列』。
- 加入下面的程式碼
Procedure TForm1.miViewToolsBarClick(Sender: TObject); Begin // 反向調整顯示工具列的選項 miViewToolsBar.Checked := not miViewToolsBar.Checked; // 按所選取的方式, 來決定是否顯示工具列 ToolBar1.Visible := miViewToolsBar.Checked; End; |
|顯示工具列試試。
|顯示狀態列加上處理的程式碼。
2.4.5 Delphi提供的輔助編輯工具:Code Insight
- Code Completion:當輸入物件的名稱後,再輸入句點,稍待一會兒,Delphi會列出一個方塊顯示這個物件所有的特性、方法和事件。
- Code Parameters:在輸入方法的呼叫時,在輸入左括弧後,稍待一會兒,Delphi會列出一個方塊顯示該方法之所有參數及其型態。
- Code Template:按Ctrl+j鍵,Delphi會列出所有已經定義好的程式碼樣版。