程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 第一章-Delphi入門(三)(2)

第一章-Delphi入門(三)(2)

編輯:Delphi

1.2.5.1 為用戶操作建立“事件”

單擊窗體上的“Rectangle”按鈕,在Object Inspector中,點動“Events”頁標簽,出現事件窗口。在本例程中,我們只關心OnClick事件,即按鈕接收到左鍵單擊時應用程序所作出的反應。在Object Inspector窗口中雙擊OnClick事件右端的值段,會使得Delphi激活庫代碼編輯器,並將光標停在該按鈕所對應的過程的begin...end之間。“Rectangle”按鈕的功能是使Shape部件的形狀為矩形。聯系前文我們查看過的Shape部件的“Shape”屬性,現在,我們要做的是在程序中控制部件的屬性。

在光標處鍵入以下的程序段: 

Shape1.Shape := stRectangle; 

用同樣的方法,在Button2和Button3的OnClick事件響應內復制以上語句,並分別將賦值號後的屬性值改為stRoundRect和stEllipse。為防止輸入錯誤導致程序運行出錯,建議您使Shape1部件的Object Inspector可見,檢視屬性Shape的各個值並對應輸入。

在代碼編輯器中,Delphi自動建立的過程以關鍵字Procedure開頭,用戶可以在begin…end之間加入自己的程序,也可以定義變量。這個程序塊對用戶的外部事件(此例中是按動按鈕)進行響應。我們稱之為事件處理過程。 

1.2.5.2 使用顏色編輯對話框 

圖標按鈕“Color”要控制部件Shape1的顏色,我們可以調入顏色編輯對話框,用以選擇要變成的顏色。這時就要用到運行時不可視的部件ColorDialog了。同樣地使圖標按鈕BitBtn1響應OnClick事件,在它的過程中加入以下的語句:

ColorDialog1.Execute;

Shape1.Brush.Color := ColorDialog1.Color; 

這樣,圖標按鈕的功能也就完成了。

初學者可能對這樣的程序段不能理解。其實也是十分簡單的。查看ColorDialog的Brush屬性,就會發現它是個集屬性,在其下還有一個Color選項,正是我們想改變的屬性。既然我們想將圖形的顏色變得更加豐富多彩,它本身提供的幾種顏色就已不能滿足要求了。用顏色編輯器可以得到更多的色彩。程序的第一句用Execute方法,使得ColorDialog運行它本身。當用戶在對話框中進行操作,選定了一種顏色時,即使得TColorDialog對象的一個屬性Color置為選定顏色的值。將此值賦給Shape1的Brush屬性的子屬性Color,就將選定的顏色加到了圖形上。

讀者的要求可能會是,怎樣盡快的了解這些這些方法、屬性和域呢?下文對使用聯機幫助的簡單介紹可能會對您有所裨益。 

1.2.6 使用聯機幫助Help 

事實上,使用聯機幫助是您全面地了解可用的方法、對象的域、屬性等信息的最快捷途徑。您還可以參考Delphi給定的例程。較為簡單有效的方法是使用Help中的搜索功能。如果您對一個對象知之甚少,選用主菜單中的Help Help Topics項,在彈出的幫助對話框,選用Indexes(“索引”)頁,Delphi 2.0會提示您輸入要檢索的主題。以您想用的部件的對象名作為檢索主題詞,可以參閱很多基本的信息。例如,上文的例程中,在編輯框中鍵入對象的名稱TColorDialog,在詞條中就會出現該主題,按動Display按鈕顯示出TColorDialog的幫助信息。查看method,可以找到能應用在CclorDialog1上的方法Execute;仔細閱讀它的功能,上述的編程便不難理解了。Properties中提供了部件的所有屬性,在關鍵屬性Key Properties前加上了“金鑰匙”,提供了詳盡的說明。在Task中您可以查閱該對象的其它相關主題,還可以參閱Example中的應用例程。用幫助窗口的Edit各種功能進行復制、剪貼等操作。

如果您已經對對象有一定的了解,想查閱它的具體方法、域等,可以直接用主題詞進行檢索。 

以上,我們已經完成了簡單的例程。運行您的程序,選用各個按鈕改變圖形的顏色和形狀。如圖1.9所示。雖然它只是一個“小玩具”,卻直觀地給您一個用Delphi編程的印象。對比一下您親手編制的程序量和程序的功能,您就會理解Delphi為程序員提供了怎樣的方便。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved