上下控件是Windows中最常用的控件之一。它只不過是一對(duì)箭頭,用戶可單擊它來增加或減少控件的設(shè)定值。通常,緊靠著上下控件有一個(gè)編輯控件,稱為伙伴編輯控件或伙伴控件,用于顯示用戶輸出的值。上下控件在應(yīng)用程序中用途非常廣泛,但目前在縱多出版資料中很少提及其實(shí)現(xiàn)方法,使軟件開發(fā)者甚感迷惑。其實(shí),在Visual C++6.0中可以很輕松的實(shí)現(xiàn)這一控件。筆者通過試驗(yàn)摸索,對(duì)上下控件的實(shí)現(xiàn)作一簡(jiǎn)要介紹,以饗縱軟件開發(fā)朋友。 1. 在Visual C++6.0中創(chuàng)建一個(gè)對(duì)話框文檔應(yīng)用程序(這一步應(yīng)該不用詳細(xì)介紹了吧!)。 2. 打開資源編輯框,將其中的對(duì)話框縮放至適當(dāng)大小。再在其中的適當(dāng)?shù)胤椒乓粋(gè)編輯框(即控件框中的EDIT控件),然后在它的右邊放一對(duì)上下箭頭(即控件框中的SPIN控件)。 注意:這一步中的編輯框和上下箭頭必須按上面的先后順序放置,否則,二者可能勾連不上! 3. 按以下指示的順序依次打開上下箭頭的屬性框。在對(duì)話框上單擊上下箭頭控件(SPIN)=>單擊右鍵=>選擇Properties=>選擇Styles屬性頁。此時(shí)彈出一個(gè)相應(yīng)的對(duì)話框。 下面介紹與之有關(guān)的一些選項(xiàng): Alignment的選項(xiàng)的功能: Right:使上下控件放置在伙伴控件的右邊; Left:使上下控件放置在伙伴控件的左邊; Unattached:使上下控件放置與伙伴控件互不勾連; Orientation的選項(xiàng)的功能: Vertical:設(shè)置控件為水平方向; Horizontal:設(shè)置控件為垂直方向; AutoBuddy :設(shè)置上下箭頭(SPIN)指針,使之指向伙伴編輯框; Wrap:使控件值在達(dá)到最小值之后回繞到最大值,反之亦然; Set buddy integer:設(shè)置伙伴控件的值為整形; Arrow keys:使用戶可以使用鍵盤的上下箭頭來改變控件的值; No thousand:沒有以千為單位分隔的逗號(hào); Hot track:設(shè)置熱鍵跟蹤; 至于General和Extend Styles兩屬性頁讀者可以根據(jù)實(shí)際情況選擇一些自己所需要的項(xiàng)目,在此筆者不再贅述! 4. 到目前為止,做出來的控件還沒完全達(dá)到目的,此時(shí)上下箭頭的功能與我們實(shí)際需要的正好相反:上箭頭將使控件的值減小,而下箭頭將使控件的值增大;(有興趣的讀者可以試一試)。 5. 要使做好的控件達(dá)到我們真正需要的目的,其實(shí)比較簡(jiǎn)單:只需在對(duì)話框初始化函數(shù)(筆者試驗(yàn)的程序中為BOOL CHuobanDlg::OnInitDialog())中加上下面的一句話即可; m_LSpin.SetRange(-50,50); 下面對(duì)之略加說明:m_Lspin是與上下箭頭對(duì)應(yīng)的 CspinButtonCtrl類的對(duì)象。SetRange(int x,int y)是設(shè)置控件變化的上下界為x,y; 好了,到現(xiàn)在為止,整個(gè)伙伴控件就已經(jīng)完全做好了!
|
溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!