用Delphi編寫一個數字曲線生成程序,類似波形曲線,本程序可以繪制四種數學曲線:正弦曲線、余弦曲線、正切曲線和余切曲線。同時,還可以連續繪制正弦曲線。
Delphi生成波形曲線、數學曲線設計思想:本例用到的控件主要包括:TabbedNotebook 控件、Image 控件和BitBtn 控件等。多頁標簽是Windows 操作系統中常用到的窗體形式,在其上可以根據顯示的內容將窗體分成多個部分。利用Delphi 6.0 中的TabbedNotebook 控件可以建立多頁標簽,在其中可以編輯、添加和刪除多個標簽頁,還可以改變標簽頁之間的相對位置關系。本例用到的知識點還包括Canvas 對象和While 語句等。程序運行效果如下圖:
下面來說說設計步驟:
在本例中,窗體上共放置了5 個標簽頁,分別用來放置正弦曲線、余弦曲線、正切曲線、余切曲線和連續繪制的正弦曲線。利用TabbedNotebook 的Page 屬性可以很方便地為窗體添加或刪除標簽頁。為了能夠在窗體上顯示出曲線,在TabbedNotebook 控件上的每個標簽頁中均放置了一個Image 控件。在程序的開始定義了相關的變量,它們是x1、x2、y1、y2 和n,其中x1 和y1 用來存取曲線繪制的起始點坐標,x2 和y2 用來存儲曲線繪制的當前點,而n 則用來控制所繪制曲線的周期。最後曲線的顯示是通過調用語句Image.Canvas.Moveto()和Image.Image.Lineto()函數來實現的。
1.新建工程文件:
(1)啟動Delphi 6.0 程序。選擇“文件”菜單下的“新建”命令,從彈出的子菜單中選擇Application 選項,則出現新建工程的Form1 窗口。
(2)選擇“文件”菜單下的“工程另存為”命令,彈出Save Unit1 As 對話框。在“保存在”列表框中選擇需要存放該窗口文件所在的目錄名;在“文件名”編輯框中填寫文件名,這裡填寫“Unit1”,點擊“保存”按鈕,保存上面的選項。
(3)執行上一步後,將彈出“工程另存為”對話框。在“保存在”列表框中選擇需要存放該工程的目錄名,最好和第(2)步選取相同的目錄;在“文件名”編輯框中填寫保存處理該工程的源代碼的文件名,這裡填寫“Project1”,點擊“保存”按鈕,保存上面的選項。
2.修改設置窗口參數:
(1)激活Unit1 窗口,在“屬性”面板中設置該窗體的Caption 屬性為“繪制多種數學曲線”,Name 屬性為“Form1”。(2)選擇Win 3.1 頁上的TabbedNotebook 選項,在窗體中添加一TabbedNotebook控件,在系統默認設置下只有一個標簽頁,且標簽頁的命名為Default,調整它在窗體中合適的大小和位置。
(3)選中TabbedNotebook 控件,點擊“屬性”面板中Pages 屬性右側的按鈕,將彈出Notebook Editor 標簽頁編輯對話框。點擊Add 按鈕可以添加標簽頁,點擊Edit 按鈕可以編輯已有的標簽頁,選中某標簽頁後,點擊Delete 按鈕可以刪除該標簽頁。在這裡我們一共添加了5 個標簽頁,各個標簽頁的名稱分別為“正弦曲線”、“余弦曲線”、“正切曲線”、“余切曲線”和“連續曲線”。
(4)選擇“附加”頁上的Image 選項,添加到已有的標簽頁上,並在“屬性”面板上設置其Align 屬性為“alClIEnt”,使其充滿整個標簽頁。這樣的操作需進行5 次,因為共有5 個標簽頁。值得我們注意的是,在編程階段我們無法直接用鼠標點擊標簽頁來進行標簽頁之間的互相切換,只能通過“屬性”面板中的ActivePage 下拉菜單中選取相應的標簽頁進行切換。
(5)選擇“附加”頁上的BitBtn 選項,給各個標簽頁添加BitBtn 控件,其中“連續繪制”頁面添加兩個BitBtn 控件,在“屬性”面板上設置其Caption 屬性為“開始”和“停止”,其余的BitBtn 控件的Caption 屬性均為“開始”。
(6)選擇“系統”頁上的Timer 選項,給“連續繪制”標簽頁上添加一個Timer 控件,在“屬性”面板上設置其Name 屬性為“Timer1”,Enable 屬性設置為“False”,Interval屬性設置為1000。
(7)選擇“附加”頁上的BitBtn 選項,給窗體的下方添加一個BitBtn 控件,在“屬性”面板上為其Glyph 屬性選擇合適的圖像文件,設置其Caption 屬性為“退出”。