第3 4章順序結(jié)構(gòu)程序設(shè)計_第1頁
第3 4章順序結(jié)構(gòu)程序設(shè)計_第2頁
第3 4章順序結(jié)構(gòu)程序設(shè)計_第3頁
第3 4章順序結(jié)構(gòu)程序設(shè)計_第4頁
第3 4章順序結(jié)構(gòu)程序設(shè)計_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

會計學(xué)1第34章順序結(jié)構(gòu)程序設(shè)計一、基本語句1.賦值語句

STORE<表達(dá)式>TO<名稱列表>

變量名=<表達(dá)式>2.程序注釋語句.程序中的說明,方便閱讀。

NOTE[〈注釋內(nèi)容〉]

*[〈注釋內(nèi)容〉]&&[〈注釋內(nèi)容〉]—

行尾注釋3.

暫停語句

WAIT[<提示信息>][TO<內(nèi)存變量>][TIMEOUT<數(shù)值表達(dá)式>]

WAIT"繼續(xù)否(Y/N)?"TOANS第1頁/共37頁4.語句續(xù)行在行未加上續(xù)行符“;”(半角分號)

5.輸入字符串

ACCEPT[〈字符表達(dá)式〉]TO〈內(nèi)存變量〉

6.輸入數(shù)據(jù)命令

INPUT[〈字符表達(dá)式〉]TO〈內(nèi)存變量〉

7.輸出數(shù)據(jù)命令:?|??8.程序結(jié)束語句

RELEASETHISFORM|THISFORM.RELEASE()

過程結(jié)束:RETURN|終止VFP運(yùn)行QUIT第2頁/共37頁一、面向過程編程程序文件

1.簡介擴(kuò)展名.prg2.建立方法:

命令方式:ModifyCommand[文件名]

菜單方式:文件新建程序在項目管理器下建立程序文件

3.保存并運(yùn)行

命令方式:do<程序文件名>

菜單方式:程序運(yùn)行第3頁/共37頁二、順序結(jié)構(gòu)

順序結(jié)構(gòu)按照出現(xiàn)的先后順序依次執(zhí)行,執(zhí)行完一條命令(語句),繼續(xù)執(zhí)行在書寫順序上緊接著此語句的下一條語句。求解一元二次方程

a=1b=4INPUT"輸入C的值:"TOCx1=(-b+SQRT(b*b-4*a*c))/(2*a)x2=(-b-SQRT(b*b-4*a*c))/(2*a)?"方程的根是:",x1,"另一個根是:",x2第4頁/共37頁

面向?qū)ο蟪绦蛟O(shè)計簡介

面向?qū)ο蠹夹g(shù)的基本出發(fā)點在于盡可能地按照人類認(rèn)識世界的方法和思維方式來分析和解決問題。面向?qū)ο蠹夹g(shù)即以對象為最基本的元素,對象構(gòu)成了分析和解決問題的核心。例:解方程第5頁/共37頁3.1.1對象的屬性、事件與方法

從可視化編程的角度來看,對象是一個具有屬性(數(shù)據(jù))和方法(行為方式)的實體。一個對象建立以后,其操作就通過與該對象有關(guān)的屬性、事件和方法來描述。第6頁/共37頁1.對象的屬性

屬性(Property)是指對象的一項描述內(nèi)容,用來描述對象的一個特性,不同的對象有不同的屬性,而每個對象又都由若干屬性來描述。屬性值的設(shè)置或修改可以通過屬性窗口和編程的方法來改變。在程序中設(shè)置屬性的一般格式是:表單名.對象名.屬性名=屬性值Thisform.lable1.caption=“姓名”例:日期時間第7頁/共37頁2.對象的事件所謂事件(Event),是由VFP預(yù)先定義好的、能夠被對象識別的動作,如單擊(Click)事件、雙擊(DblClick)事件、裝入(Load)事件、移動鼠標(biāo)(MouseMove)事件等,不同的對象能識別的事件不全相同。對象的事件是固定的,用戶不能建立新的事件。第8頁/共37頁事件過程事件過程(EventProcedure)是為處理特定事件而編寫的一段程序。當(dāng)事件由用戶觸發(fā)(如Click)或由系統(tǒng)觸發(fā)(如Load)時,對象就會對該事件作出響應(yīng)(Respond)。第9頁/共37頁3.對象的方法方法(Method)是與對象相關(guān)聯(lián)的過程,VFP的方法屬于對象的內(nèi)部函數(shù),用于完成某種特定的功能而不一定響應(yīng)某一事件,如添加對象(AddObject)方法、繪制矩形(Box)方法、釋放表單(Release).方法也被“封裝”在對象中,不同的對象具有不同的內(nèi)部方法。VFP提供了百余個內(nèi)部方法供不同的對象調(diào)用。與事件過程不同的是,根據(jù)需要可由用戶自行建立新方法。第10頁/共37頁4.事件與方法的程序調(diào)用

事件過程由事件的激發(fā)而調(diào)用其代碼,也可以在運(yùn)行中由程序調(diào)用其代碼,在程序中調(diào)用事件代碼的格式是:表單名.對象名.事件名Tmand1.click方法的代碼只能在運(yùn)行中由程序調(diào)用.在程序中調(diào)用對象方法的格式是[[〈變量名〉]=]〈表單名〉.〈對象名〉.〈方法名〉()Thisform.release()例:日期時間第11頁/共37頁二、面向?qū)ο蟪叹幊滩襟E

1、創(chuàng)建表單。2、添加對象。從“控件工具欄”選擇對象模板。3、修改對象屬性。4、編寫按鈕代碼。Thisform.release()5、運(yùn)行表單。未保存表單提示保存文件,表單擴(kuò)展名為:SCX、SCT。第12頁/共37頁3.1.2控件與對象

VFP編程的最大特點,就是利用VFP所提供的圖形構(gòu)件快速構(gòu)造應(yīng)用程序的輸入輸出屏幕界面??丶–ontrol)是某種圖形構(gòu)件的統(tǒng)稱,如“標(biāo)簽控件”、“文本框控件”、“列表框控件”等,利用控件創(chuàng)建對象則是構(gòu)造應(yīng)用程序界面的具體方法。1.常用控件和內(nèi)部對象常用控件由VFP的基類提供,共21個,每個控件用“表單控件”工具欄中的一個圖形按鈕表示,見表3-1。圖標(biāo)名稱說明標(biāo)簽(Label)創(chuàng)建一個標(biāo)簽對象,用于保存不希望用戶改動的文本,如復(fù)選框上面或圖形下面的標(biāo)題文本框(TextBox)創(chuàng)建用于單行數(shù)據(jù)輸入的文本框?qū)ο?,用戶可以在其中輸入或更改單行文本?3頁/共37頁編輯框(EditBox)創(chuàng)建用于多行數(shù)據(jù)輸入的編輯框?qū)ο?,用戶可以在其中輸入或更改多行文本命令按鈕(CommandButton)創(chuàng)建命令按鈕對象,用于執(zhí)行命令命令按鈕組(CommandGroup)創(chuàng)建命令按鈕組對象,用于把相關(guān)的命令編成組選項按鈕組(OptionGroup)創(chuàng)建選項按鈕組對象,用于顯示多個選項,用戶只能從中選擇一項復(fù)選框(CheckBox)創(chuàng)建復(fù)選框?qū)ο?,允許用戶選擇開關(guān)狀態(tài),或顯示多個選項,用戶可從中選擇多于一項第14頁/共37頁組合框(ComboBox)創(chuàng)建組合框或下拉列表框?qū)ο?,用戶可以從列表項中選擇一項或人工輸入一個值列表框(ListBox)創(chuàng)建列表框?qū)ο?,用于顯示供用戶選擇的列表項。當(dāng)列表項很多,不能同時顯示時,列表可以滾動微調(diào)(Spinner)創(chuàng)建微調(diào)對象,用于接受給定范圍之內(nèi)的數(shù)值輸入表格(Grid)創(chuàng)建表格對象,用于在電子表格樣式的表格中顯示數(shù)據(jù)圖像(Image)創(chuàng)建圖像對象,在表單上顯示圖像計時器(Timer)創(chuàng)建計時器對象,以設(shè)定的時間間隔捕捉計時器事件。此控件在運(yùn)行時不可見頁框(PageFrame)創(chuàng)建頁框?qū)ο螅@示多個頁面第15頁/共37頁ActiveX(ActiveXControl)創(chuàng)建OLE容器對象,向應(yīng)用程序中添加OLE對象ActiveX綁定型(ActiveXBoundControl)創(chuàng)建OLE綁定型對象,可用于向應(yīng)用程序中添加OLE對象。與OLE容器控件不同的是,OLE綁定型控件綁定在一個通用字段上線條(Line)創(chuàng)建線條對象,設(shè)計時用于在表單上畫各種類型的線條形狀(Shape)創(chuàng)建形狀對象,設(shè)計時用于在表單上畫各種類型的形狀??梢援嬀匦巍A角矩形、正方形、圓角正方形,橢圓或圓容器(Container)創(chuàng)建容器對象,在容器中可以包含其他的控件分隔符(Separafor)創(chuàng)建分隔符對象,在工具欄的控制間加上空格超級鏈接(HyperLink)使用“超級鏈接”可以跳轉(zhuǎn)到Internet或Intranet的一個目標(biāo)地址上第16頁/共37頁

2.表單對象表單(Form)是應(yīng)用程序的用戶界面,也是進(jìn)行程序設(shè)計的基礎(chǔ)。各種圖形、圖像、數(shù)據(jù)等都是通過表單或表單中的對象顯示出來,因此表單是一個容器對象。

(1)表單的結(jié)構(gòu)

VFP的表單具有和Windows應(yīng)用程序的窗口界面相同的結(jié)構(gòu)特征。,一個典型的表單有圖標(biāo)、標(biāo)題、極小化按鈕、極大化按鈕、關(guān)閉按鈕、移動欄、表單體及其周圍的邊框。其中除了表單體之外的所有特征都可以部分或全部從表單中被刪除。第17頁/共37頁表單的幾種常用屬性

Name 表單名Caption 表單的標(biāo)題AutoCenter .T.或.F. 為真時表單自動居中 BackColor RGB三色值 表單背景色 Left,Right 數(shù)值表單位置 Height,Width 數(shù)值 表單的高和寬 第18頁/共37頁表單常用的事件、方法程序LoadEvent——

調(diào)用(運(yùn)行)該表單前發(fā)生的事件(例題:啟動)InitEvent——

表單初始化、創(chuàng)建對象時事件Activate事件——當(dāng)表單被激活時發(fā)生。ClickEvent——

點擊表單(鼠標(biāo)左鍵)事件(例題變大?。〥blClickEvent——雙擊表單事件 ErrorEvent——

運(yùn)行表單時出錯的事件 Hide——

隱藏表單方法 KeyPressEvent——按鍵時發(fā)生的事件 RightClickEvent——右擊表單事件 DestroyEvent——在對象釋放時引發(fā)UnLoadEvent——當(dāng)表單被關(guān)閉時發(fā)生。在表單運(yùn)行時首先運(yùn)行LoadEvent,然后InitEvent、Activate事件在表單關(guān)閉時首先運(yùn)行DestroyEvent,然后UnLoadEvent第19頁/共37頁常用的表單方法程序Refresh 表單刷新方法 Release 表單釋放方法例:表單左右擊 第20頁/共37頁3.對象的引用

(1)對象的包容層次

VFP中的對象根據(jù)它們所基于的類的性質(zhì)可分為兩類:容器類對象和控件類對象。容器類對象:可以包含其他對象,并且允許訪問這些對象,例如表單、表格等??丶悓ο?只能包含在容器對象之中,而不能夠包含其他對象,例如命令按鈕、復(fù)選框等。表3-3列出了每種容器類對象所能包含的對象。第21頁/共37頁容器能包含的對象命令按鈕組命令按鈕容器任意控件自定義任意控件、頁框、容器、自定義對象表單集表單、工具欄表單頁框、任意控件、容器或自定義對象表格列標(biāo)頭對象以及除了表單集,表單,工具欄,計時器和其他列對象以外的任意對象表格表格列選項按鈕組選項按鈕頁框頁面頁面任意控件、容器和自定義對象工具欄任意控件、頁框和容器第22頁/共37頁

當(dāng)一個容器包含一個對象時,稱該對象是容器的子對象,而容器稱為該對象的父對象。

(2)對象的引用作為應(yīng)用程序的用戶界面,表單上可以包含許多對象,而這些對象又有可能具有互相包含的層次關(guān)系。若要引用一個對象,需要知道它相對于容器層次的關(guān)系。在容器層次中引用對象恰似給VFP提供這個對象地址。

①絕對引用:通過提供對象的完整容器層次來引用對象稱為絕對引用。圖3-7表示了一種可能的容器嵌套方式。第23頁/共37頁

若要使表列中的控件無效,需要提供以下地址:Formset.Form.PageFrame.Page.Grid.Column.Control.Enabled=.F.

應(yīng)用程序?qū)ο螅╛VFP)的ActiveForm屬性允許在不知道表單名的情況下處理活動的表單。例如,下列代碼改變活動表單的背景顏色,而不考慮其所屬的表單集。_VFP.ActiveForm.BackColor=RGB(255,255,255)

類似地,ActiveControl屬性允許處理活動表單的活動控件。Name1=_VFP.ActiveForm.ActiveControl.Name

第24頁/共37頁②相對引用:在容器層次中引用對象時,可以通過快捷方式指明所要處理的對象,即所謂相對引用。例如:THISFORM.Cmd1.Caption=“關(guān)閉“&&Cmd1對象的標(biāo)題(Caption)屬性設(shè)為“關(guān)閉”。THIS.Caption=“關(guān)閉“&&本對象的標(biāo)題(Caption)屬性設(shè)為“關(guān)閉”。THIS.Parent.BackColor=RGB(192,0,0)&&本對象的父對象的背景色設(shè)置為暗紅色。例:放大縮小

第25頁/共37頁屬性或關(guān)鍵字引用ActiveControl當(dāng)前活動表單中具有焦點的控件ActiveForm當(dāng)前活動表單ActivePage當(dāng)前活動表單中的活動頁P(yáng)arent該對象的直接容器THIS該對象THISFORM包含該對象的表單THISFORMSET包含該對象的表單集

說明:只能在方法程序或事件過程中使用THIS、THISFORM和THISFORMSET。

表3-4列出了一些屬性和關(guān)鍵字,這些屬性和關(guān)鍵字允許更方便地從對象層次中引用對象。第26頁/共37頁一、標(biāo)簽(Label)控件顯示文本信息的對象。用于標(biāo)題、提示框、說明框等。屬性:

Caption:標(biāo)簽的內(nèi)容,顯示的信息。

AutoSize:水平擴(kuò)充。

WordWrap:自動換行題文字屬性:Backcolor,Forecolor,FontSize,FontName。

立體標(biāo)簽,兩個同樣標(biāo)簽,Backstyle=0透明,置前(后)例題:lt4-1,lt4-2,lt4-3、時間日期第27頁/共37頁實現(xiàn)數(shù)據(jù)輸入、輸出的控件??梢跃庉嫞ㄝ斎耄﹥?nèi)存變量、數(shù)組元素或字段的內(nèi)容。常用屬性:ValueControlSource(焦點2.scx)PasswordCharReadOnly常用事件:

GotFocusEvent——獲得焦點時發(fā)生的事件焦點(FOCUS)就是光標(biāo)。對象有“焦點”才能響應(yīng)用戶的輸入。對象獲得焦點的方法:鼠標(biāo)單擊對象

THISFORM.TEXT.SETFOCUS(例:焦點2、text1-gotfocus)對象的屬性TabIndex決定控件接受焦點的順序,依次增加。(text解方程.scx)ValidEvent

在控件失去焦點之前發(fā)生的事件InteractiveChangeEvent

當(dāng)用戶使用鍵盤或鼠標(biāo)更改控件的值時發(fā)生的事件LostFocusEvent

當(dāng)一個對象失去焦點時發(fā)生的事件KeyPressEvent

當(dāng)用戶按住并釋放一個鍵時發(fā)生的事件(LT4_4)P91鍵值表二、文本框(TextBox)控件

第28頁/共37頁三、編輯框EditBox可編輯備注型字段,有滾動條,編輯時允許輸入“回車”鍵。與文本框不同,是能處理多行文本數(shù)據(jù)。屬性、事件同文本框?qū)傩裕?/p>

Caption,ContrlSoure,valueScrollBars滾動條的類型。

0—無,2—垂直滾動條。第29頁/共37頁四、命令按鈕(Command)控件創(chuàng)建命令按鈕對象,用于執(zhí)行命令常用屬性:

Caption:命令按鈕顯示的內(nèi)容,“\<”訪問鍵

Name:命令按鈕對象的名字。標(biāo)示。

Enabled:邏輯型,命令按鈕是否可用。

Visible:邏輯型,命令按鈕是否可見。

Picture:指定按鈕的圖形文件名。

DownPicture:指定按鈕按下時的圖形。事件:

Click:按鈕命令按鈕執(zhí)行的代碼。第30頁/共37頁形狀控件(Shape):創(chuàng)建形狀對象,設(shè)計時用于在表單上畫各種類型的形狀,修飾之用常用屬性:Curvature:角的曲率(<100)。

SpecialEffect:0—三維1—平面

BackStyle:背景是否透明0—透明1—不透明例題:LT4_6

五、形狀控件(Shape)

第31頁/共37頁六、容器控件(Container)容器控件(Container)可在該對象內(nèi)添加其他控件,添加控件方法如下:選擇容器->“右鍵”->”編輯”。對象分類:容器類對象和控件類。LT4-7第32頁/共37頁七.圖象(Image)在表單上插入圖片。美化表單、修飾之用。圖形類型*.bmp*.Ico屬性:

Picture:圖片文件名。Stretch:

0-裁剪,1-按原比例填充,2-變比例填充即圖片與圖象框一樣大BorderStyle邊框是否可見。例:LT4_TP第33頁/共37頁

對話框是用戶與應(yīng)用程序之間交換信息的最佳途徑之一。使用對話框函數(shù)可以得到VFP的內(nèi)部對話框,這種方法具有操作簡單及快速的特點。

MESSAGEBOX函數(shù)在對話框中顯示信息,等待用戶單擊按鈕,并返回一個整數(shù)以標(biāo)明用戶單擊了哪個按鈕。其語法格式為[〈變量名〉]=MESSAGEBOX(〈信息內(nèi)容〉[,〈對話框類型〉[,〈對話框標(biāo)題〉]])

說明:①〈信息內(nèi)容〉指定在對話框中出現(xiàn)的文本。在〈信息內(nèi)容〉中使用硬回車符(CHR(13))可以使文本換行。對話框的高度和寬度隨著〈信息內(nèi)容〉的增加而增加,最多可

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論