對(duì)話框就好比是一個(gè)容器,只有將一些控件添加在這個(gè)容器中,才能實(shí)現(xiàn)用戶與對(duì)話框之間的交互。下面我們將前面的對(duì)話框設(shè)計(jì)成如圖13所示的界面,其功能是用來讓用戶調(diào)整視圖客戶區(qū)的背景顏色,設(shè)置的效果可在下方的矩形框中預(yù)覽。
1. 界面實(shí)現(xiàn)的技巧
在圖13所示的對(duì)話框中所用到的控件有:組框
[/p]、靜態(tài)文本[p align=center]
需要說明的是:
?、?"靜態(tài)文本"、"組框"和"圖片控件"都屬于靜態(tài)控件,一般不接收用戶輸入也沒有事件映射,其中"組框"控件可以把一些控件人為地劃分成一組,使界面更加清晰。"靜態(tài)文本"和"圖片控件"分別用來顯示文本內(nèi)容和圖像資源(如圖標(biāo)、位圖等)。
?、?"編輯框"是一個(gè)讓用戶從鍵盤輸入和編輯文本的矩形窗口,用戶通過它可以輸入各種文本、數(shù)字或者口令,也可使用它來編輯和修改簡單的文本內(nèi)容。當(dāng)編輯框被激活且具有輸入焦點(diǎn)時(shí),就會(huì)出現(xiàn)一個(gè)閃動(dòng)的插入符,表明當(dāng)前插入點(diǎn)的位置。
(1) 幾乎每一個(gè)控件都要設(shè)置自己的標(biāo)題(Caption)內(nèi)容。例如,圖13中組框的"背景顏色",靜態(tài)文本的"紅色顏色分量(R)"等。單擊要設(shè)置的控件,在屬性窗口中修改其Caption屬性內(nèi)容。
(2) 若要使"旋轉(zhuǎn)控件"和"編輯框"組合一起,成為"伙伴"控件,必須使這兩個(gè)控件的Tab鍵次序相連續(xù),且"編輯框"的Tab鍵次序在前。在對(duì)話框中, Tab鍵可以按照一定次序依次將輸入焦點(diǎn)從一個(gè)控件移動(dòng)到另一個(gè)控件,這個(gè)次序稱為"Tab鍵次序"。由于默認(rèn)的控件Tab鍵次序與添加的控件次序相同,因此我們添加上述控件要先添加一個(gè)"編輯框",然后再添加一個(gè)"旋轉(zhuǎn)控件"。另外,還需要在旋轉(zhuǎn)控件的屬性窗口中,將其Alignment(附著)屬性設(shè)為"右對(duì)齊 ",將Auto Buddy和Set Buddy Integer屬性均設(shè)為True。Alignment(附著)屬性用來指定旋轉(zhuǎn)控件在伙伴窗口的附著方式,它有三種方式:"取消附著"、"左對(duì)齊(Left)"和"右對(duì)齊"(Right)。Auto Buddy(自動(dòng)伙伴)屬性為True時(shí),旋轉(zhuǎn)控件自動(dòng)前一個(gè)Tab鍵順序的控件作為自己的伙伴控件。Set Buddy Integer(設(shè)置伙伴窗口中的整數(shù)值) 屬性為True時(shí),單擊旋轉(zhuǎn)控件的向上或向下按鈕將改變伙伴窗口中的整數(shù)值。
(3) 為了能預(yù)覽顯示效果,我們通過需要一個(gè)可以繪制圖形的控件。通常使用"靜態(tài)文本",但其Static Edge屬性要設(shè)為True或Sunken屬性設(shè)為True,這要看起來有下沉的立體感。當(dāng)然我們也可以設(shè)置其他的外觀。
(4) 在"取消"按鈕上方有一條水平線,這是用圖片控件來設(shè)置的。方法是,添加一個(gè)圖片控件,調(diào)整其位置和大小。在其屬性窗口中,將其Type屬性選擇為"水平蝕刻"即可。
(5) 對(duì)于控件的ID號(hào),雖然我們可以使用默認(rèn)的標(biāo)識(shí)符,但為了容易辨別起見,我們對(duì)在程序中需要操作的控件重新指定其ID號(hào)。下表就是本例中需要指定的各個(gè)控件的ID號(hào)和Caption屬性。
控 件 ID屬性
"紅色顏色分量"的編輯框 IDC_ EDIT_R
"紅色顏色分量"的旋轉(zhuǎn)控件 IDC_SPIN_R
"綠色顏色分量"的編輯框 IDC_ EDIT_G
"綠色顏色分量"的旋轉(zhuǎn)控件 IDC_SPIN_G
"藍(lán)色顏色分量"的編輯框 IDC_ EDIT_B
"藍(lán)色顏色分量"的旋轉(zhuǎn)控件 IDC_SPIN_B
靜態(tài)文本 IDC_DRAW
(6) 單擊對(duì)話框編輯器工具欄上的測試按鈕
聯(lián)系客服