2015年計算機二級考試《VFP》精選上機練習(xí)題(3)
一、基本操作題
請根據(jù)以下各小題的要求設(shè)計Visual Basic應(yīng)用程序(包括界面和代碼)。
(1)在Form1的窗體上建立一個主菜單,標題為“命令”,名稱為Com,該菜單有3個子菜單,其標題分別為“輸出”、“刪除”和“關(guān)閉”,其名稱分別為Prin、Del和Close。編寫適當(dāng)?shù)?/p>
事件過程,程序運行后,如果單擊“命令”菜單中的“輸出”命令,則在窗體上顯示“Hello World!”;如果單擊“刪除”命令,則刪除窗體上顯示的內(nèi)容,“關(guān)閉”命令為關(guān)閉對話框。程序的運行情況如圖17-1所示。
注意:存盤時必須存放在考生文件夾下,工程文件名為sj1.vbp,窗體文件名為sj1.frm。
(2)在Form1的窗體上畫一個標簽,其名稱為Label1;再畫一個列表框,其名稱為List1,通過屬性窗口向列表框中添加若干個項目,每個項目的具體內(nèi)容不限,編寫適當(dāng)?shù)氖录^程。程序運行后,如果雙擊列表框中的任意一項,則把列表中的項目序號數(shù)和項目文本在標簽中顯示出來。程序中不準使用任何變量,運行情況如圖17-2所示。
注意:存盤時必須存放在考生文件夾下,工程文件名為sj2.vbp,窗體文件名為sj2.frm。
二、簡單應(yīng)用題
(1)在名稱為Form1、標題為“調(diào)用系統(tǒng)對話框”的窗體上有一個文本框和四個命令按鈕及一個通用對話框,通過CommonDialog實現(xiàn)對系統(tǒng)一些對話框的調(diào)用。請將“打開”按鈕的功能補充完整,并限制打開的類型為文本文件和數(shù)據(jù)文件(*.txt和*.dat),默認打開文件類型為.txt文件。打開in.txt文件如圖17-3所示。
注意:保存時必須存放在考生文件夾下,窗體文件名為sj3.frm,工程文件名為sj3.vbp。
(2)在考生文件夾下有工程文件sj4.vbp及窗體文件sj4.frm,該程序是不完整的。在窗體上有一個名為Pic1的圖片框,有一個名為Command1、標題為“輸入半徑”或“輸入邊長”的命令按鈕,有兩個單選按鈕,名稱分別是Option1和Option2、標題分別是“圓形”和“正方形”。要求程序運行后,若選中“圓形”,則按鈕名稱為“輸入半徑”,若選中“正方形”,則按鈕名稱為“輸入邊長”,再單擊命令按鈕“輸入半徑”或“輸入邊長”,在彈出的輸入對話框中輸入相應(yīng)的參數(shù)值,則在圖片框上畫出相應(yīng)的圖形,如圖17-4所示。
注意:請在有“?”的地方填入正確內(nèi)容,然后刪除“?”及所有注釋符“'”,但不能修改其他部分。存盤時不得改變文件名和文件夾。
三、綜合應(yīng)用題
在考生文件夾下有工程文件sj5.vbp及窗體文件sj5.frm,該程序是不完整的。在名稱為Form1的窗體上有3個Label控件和2個命令按鈕,數(shù)據(jù)文件sjin.dat,存放工人的編號、姓名和年齡。按“開始”按鈕后,能從考生文件夾下的sjin.dat中讀出數(shù)據(jù)并把年齡小于平均年齡的工人的所有數(shù)據(jù)寫入考生文件夾下的sjout.dat文件中;執(zhí)行完畢,“開始”按鈕變成“完成”,且無效,如圖17-5所示。
注意:請在有“?”的地方填入正確內(nèi)容,然后刪除“?”及所有注釋符““’,但不能修改其他部分。存盤時不得改變文件名和文件夾,相應(yīng)的dat文件也保存到考生文件夾下,否則沒有成績。
答案與解析
一、基本操作題
(1)Visual Basic中,菜單也具有屬性和事件。菜單由“菜單編輯器”來創(chuàng)建。在窗體上打印信息通過Print方法來實現(xiàn)。清除在窗體上的打印信息要通過Cls方法來實現(xiàn),Cls方法清除運行時Form或PictureBox所生成的圖形和文本。其語法為:object.Cls。object表示一個對象表達式。
如果省略object,則默認為當(dāng)前的Form窗體。
根據(jù)題意,在窗體空白處單擊右鍵,選擇“菜單編輯器”,進入“菜單編輯器”對話框,添加以下菜單項:
標簽名稱內(nèi)縮
命令Com無
輸出Prin一位
刪除Del一位
關(guān)閉Close一位
設(shè)置完成后,在代碼窗口編寫如下代碼:
(2)雙擊控件觸發(fā)其DblClick事件。列表框中的表項可以通過“屬性”窗口的List屬性設(shè)置,也可以通過AddIt-em方法在程序中添加。本題是通過屬性窗口來設(shè)置的。
根據(jù)題意,將一個列表框控件和一個標簽添加到窗體中,列表框的名稱為List1,在List屬性中添加“足球”“籃球”“排球”和“乒乓球”,每輸入完一項按“Ctrl+Enter”組合鍵換行,進行新的輸入,當(dāng)輸入完成后,按回車鍵,標簽的名稱為Label1、Caption屬性為空。雙擊List1進入代碼編寫窗口,將選中項的序號和內(nèi)容連在一起放入Label1中顯示出來,注意題目要求程序中不得使用任何變量,應(yīng)該編寫如下代碼:
二、簡單應(yīng)用題
(1)通用對話框是一種ActiveX控件,通常情況下,啟動Visual Basic后,在工具箱里沒有通用對話框控件,用戶必須手動將它添加到工具箱里才可以使用。選擇“工程”→“部件”命令,打開“部件”對話框,并將Microsoft Common Dia-log Control 6.0前的復(fù)選按鈕選中,單擊“確定”按鈕將其添加到工具箱中,然后再像其他控件一樣使用。
本題補充后的具體代碼如下:
(2)本題主要考查Circle方法、Line方法和InputBox函數(shù)的使用。Circle方法在對象上畫圓、橢圓或弧。其語法為:object.Circle[Step](x,y),radius,[color,start,end,as-pect]。Line方法在對象上畫直線和矩形。其語法為:ob-ject.Line[Step](xl,1)[Step](x2,y2),[color],[B][F]。InputBox函數(shù)在一個對話框中顯示提示,等待用戶輸入正文或按下按鈕,并返回包含文本框內(nèi)容的String。其語法為:InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile,conText])。
根據(jù)題意,補充后的具體代碼如下:
三、綜合應(yīng)用題
本題主要考查定義結(jié)構(gòu)體變量,其格式如下:
End type
程序中在同一個過程打開兩個文件,因此要用兩個文件號,一個用來讀入(文件號#1),一個用來輸出(文件號#2)。利用EOF來判斷是否讀取完,先對文件進行一次讀取,計算出平均值,然后再根據(jù)條件進行邊讀取邊寫入的操作,補充后的具體代碼如下: