1[簡答題]在考生文件夾下有一個工程文件sit3.vbp,窗體上已經有一個標簽Labell,請添加一個單選按鈕數組,名稱為Op1,含三個單選按鈕,它們的Index屬性分別為0、1、2,標題依次為“飛機”、“火車”、“汽車”,再添加一個名稱為Textl的文本框。窗體文件中已經給出了Opl的Click事件過程,但不完整,要求去掉程序中的注釋符,把程序中的?改為正確的內容,使得在程序運行時單擊“飛機”或“火車”單選按鈕時,在Textl中顯示“我坐飛機去”或“我坐火車去”,單擊“汽車”單選按鈕時,在Textl中顯示“我開汽車去”,如圖所示。
注意:不能修改程序中的其他部分。最后將修改后的文件按原文件名存盤。
參考解析:
【考點分析】本題考點有:單選按鈕數組的Name、Caption和Index屬性,文本框的Name屬性,SelectCase選擇語句,“+”字符連接。
【解題思路】通過Name屬性設置對象名稱;通過Caption屬性設置對象的標題;設置兩個字符型變量a、b,a:"我坐",b="我開",用于SelectCase選擇語句的字符串連接;通過對單選按鈕數組Index屬性的查詢,實現單擊單選按鈕完成字符串連接和文本框顯示操作的功能。
【操作步驟】
步驟1:打開本題工程文件,按照題目要求建立單選按鈕數組,如圖3.9所示。
步驟2:按照題目要求建立其他控件并設置其屬性,見表3.4。
步驟3:打開代碼編輯窗口,去掉程序中的注釋符“´”,將問號改為正確的內容。
參考答案(橫線部分是需考生填入的內容)
Private Sub Op1_click (Index As Integer)
Dima As String,b As String,C As String
a="我坐"
b="我開"
Select Case____Index______
´通過Index值決定響應哪一個控件數組
CaSe O
Text1.Text=a+Me.Op1(O).Caption+"去"
CaSe 1
Text1.Text=____a______+Me.Opl(1).Caption+"去"
´當Index值為1時,選擇"我坐"
CaSe 2
Text1.Text=b+Me.Op1(2).Caption+"去"
End Select
EndSub
步驟4:調試并運行程序,關閉程序后按題目要求存盤。
【易錯提示】在窗體上復制一個控件時,如果需要創建控件數組,則在提示框中單擊“是”即可,如果不需要,則直接單擊“否”。
2[簡答題] 在名稱為Forml的窗體上,畫一個名稱為Labell的標簽,其標題為“等級考試”,顯示為宋體l0號字,且能根據標題內容自動調整標簽的大小,并有凹陷效果,如圖所示。再畫1個名稱為Timerl的計時器控件,通過屬性窗口設置有關屬性,使其不可用,時問問隔為1秒。
要求:編寫適當的事件過程,使得程序運行時,單擊Label1標簽,則每隔l秒,Label1中所顯示的內容在原有基礎上增大1個字號;單擊窗體,Label1中的內容停止增大。
注意:要求程序中不得使用變量,事件過程中只能寫一條語句。存盤時必須存放在考生文件夾下,工程文件名為sit2.vbp,窗體文件名為sjt2.frm。
參考解析:
【解題思路】Label標簽字體由Font屬性設置,內容由Caption屬性設置,自動調整屬性由AutoSize設置,凹陷效果由BorderStyle設置,計時器控件不可用由Enabled屬性設置,時間間隔屬性由Interval屬性設置。
【操作步驟】
步驟1:新建一個窗體,按照題目要求添加Label控件和Timer控件,并按表4.5在屬性窗口中設置相應屬性,如圖4.5所示。
步驟2:打開代碼編輯窗口,在指定位置編寫如下代碼。
參考答案
步驟3:調試并運行程序,關閉程序后按題目要求存盤。
3[單選題] 設有下面的程序段:
一般,在這段程序之前應先進行數組a的定義。下面定義語句中正確的是
A.Dima(100)AsIntegerB.Dima()AsIntegerC.DimaAsIntegerD.Dima(0T0100)AsInteger
參考答案:B
參考解析:在VB中定義動態數組通常分兩步:首先在窗體層或標準模塊中用Dim、Private或Public聲明一個沒有下標的數組(括號不能省),然后在過程中用ReDim語句定義帶下標的數組。根據題意,選項B.正確。
4[單選題] 以下關于鍵盤事件的敘述中,錯誤的是( )。
A.按下鍵盤按鍵既能觸發KeyPress事件,也能觸發KeyDown事件
B.KeyDown、KeyUp事件過程中,大、小寫字母被視作相同的字符
C.KeyDown、KeyUp事件能夠識別Shift、Ah,Ctd等鍵
D.KeyCode是KeyPress事件的參數
參考答案:D
參考解析:當用戶按下鍵盤上的任意鍵時,會觸發當前擁有焦點對象的KeyDown事件,用戶松開鍵盤上任意鍵時,就會觸發KeyUp事件。當用戶按下又松開鍵盤上任意鍵時,觸發KeyPress事件。故A選項正確。
KeyDown事件和KeyUp事件均向事件過程返回兩個參數KeyCode和Shift。KeyCode參數返回所按鍵對應的ASCⅡ字符代碼的整型數值或鍵代碼常數,大小寫字符被看作是相同字符,返回同一個KeyCode值。故B選項正確。
Shift參數用于判斷用戶是否按下Shift、Ctrl和Alt鍵,若用戶按下了對應的鍵,Shift參數會返回不同的值。根據以上KeyDown和KeyUp事件能識別Shift、Ctrl和Alt鍵。故c選項正確。
KeyPress事件只有一個參數KeyAscii,它可以返回按鍵對應的Ascii值,大小寫字母Ascii值不同。KeyCode不是Key-Press事件的參數。故D選項錯誤。
5[單選題] 窗體上有一個名為List1的列表框和一個名為Command1的命令按鈕,并有下面的事件過程:
程序運行時,選中1個列表項,然后單擊Command1按鈕,則產生的結果是
A.若選中的不是最前面的列表項,則選中的列表項與它前一個列表項互換位置
B.選中的列表項與它前面的列表項互換位置
C.若選中的不是最后面的列表項,則選中的列表項與它后一個列表項互換位置
D.選中的列表項與它后面的列表項互換位置
參考答案:A
參考解析:當單擊Commandl按鈕后,Listl列表框中被選中項的索引值賦給變量n,如果被選中項不是空也不是第1項時,將選中項的項目文字賦值給變量ch,用選中項的上面一項的文字替換選中項的文字,再把變量ch中的文字替換選中項上面一項的文字,簡單說就是選中項和它上面一項的文字交換。因此A選項的說法正確。
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |