MFC控制項屬性

2022-09-11 12:15:21 字數 4191 閱讀 7551

vc++6.0控制項工具箱: 

2 圖形控制項(picture):常用於顯示位圖(bitmap)和圖示(icon)

3 靜態文字(static text):用來在指定的位置顯示特定的字串,一般用來標識附近另乙個控制項的內容。顯示在靜態文字控制項中的字串一般不再改變,但是在需要的時候,也可以通過呼叫相應的函式來進行設定。mfc提供了cstatic類支援靜態控制項。

4 編輯框(edit box):用來接收使用者輸入的字串。通過選擇編輯框的選項,編輯框可以接收字串、數字、密碼等;編輯框還可以設定成接收多行字串的模式;可以自動進行大小寫轉換。編輯框可能向其父視窗傳送多種控制項通知,如果使用者需要,可以對這些控制項通知進行處理。mfc提供了cedit類支援編輯框控制項。

5 組成框(group box):用來包圍具有邏輯關係的一組控制項,在這些控制項的周圍加上邊界和標題。需注意的是,組成框僅僅是在視覺效果上對控制項進行「成組」,真正的「成組」工作還需要另外一些工作。

6 按鈕(button):用來接收使用者的命令,應用程式在接收到使用者命令後,通常需要進行一些後台工作。按鈕可以響應單擊或雙擊動作,在按鈕接收到滑鼠動作後,向其父視窗傳送相應的控制項通知,使用者可以對這些控制項通知進行訊息對映,從而進行相應的處理。在乙個對話方塊中,可以定義乙個預設按鈕,這只要選中按鈕屬性中的「default」選項。如果在對話方塊活動的時候按下了enter鍵,則等同於單擊了預設按鈕。mfc提供了cbutton類支援按鈕控制項。

7 核取方塊(check box):用來顯示某種可能的選擇,該項選擇是獨立的,使用者可以選中或取消該選項。在選項被選中的時候核選標記出現,選項被取消時核選標記消失。mfc中由cbutton類對核選框進行支援,使用者可以通過setcheck()函式和getcheck()函式設定或獲取核選框當前的狀態。

8 單選按鈕(radio button):用來選擇某種可能的選擇,與核選框不同,該選項不是獨立的。一般是幾個單選按鈕組成一組,同組中的單選按鈕可以有也只能有乙個按鈕被選中。mfc同樣使用cbutton類對單選按鈕控制項進行支援,setcheck()函式和getcheck()函式對單選按鈕也是適用的。

10 列表框(list box):用來選擇一系列的可能選擇,使用者通過滾動條可以在這些選擇中瀏覽。在列表框中,可以進行單項選擇,也可以進行多項選擇,這取決於使用者在控制項屬性對話方塊中的設定。mfc提供了clistbox類對列表框控制項進行支援。

11、12 滾動條(scroll bar):這包括水平滾動條和垂直滾動條,除了在視覺效果上的方向不同外,水平滾動條在被滾動時發生wm_hscroll訊息,而垂直滾動條在被滾動時傳送wm_vscroll訊息。mfc提供了cscrollbar進行支援。

13 微調按鈕(spin button):包括一對緊靠在一起的上下箭頭,使用微調按鈕可以增大或者縮小某個特定的數值。微調按鈕往往都需要乙個「夥伴」控制項,這通常都是乙個編輯框。當微調按鈕的向上箭頭被單擊時,編輯框中的數字就增大;反之則減小。mfc提供了cpinbuttonctrl類進行支援。

14 進度條(progress):在進行一項需要占有較長時間的操作時來反應當前的進度。當操作的進度不斷前進時,進度條就用特色顏色填充進度條框。使用者可以設定進度條的範圍和當前位置。mfc提供了cprogressctrl類進行支援。

15 滑塊控制項(slider):通常用來在程式中接受一系列離散的數值。使用者可以設定滑塊控制項的取值範圍,並可以為控制項加上刻度標記以顯示特定位置的含義。mfc提供了csliderctrl類進行支援。

16 熱鍵控制(hot key):熱鍵控制項看起來就像乙個編輯框,但是在熱鍵控制項中能夠立刻反應使用者剛剛按下的鍵組合,這在設定程式的熱鍵時特別有用。熱鍵控制項只是在「視覺」上顯示了按鍵組合,設定熱鍵的工作還需要使用者新增**完成。mfc提供了chotkey類進行支援。

17列表控制(list control):按一定的排列順序顯示一系列帶圖示的字串,列表控制項提供了四種顯示模式:大圖示、小圖示、列表和詳細資訊。使用者可以向列表控制項中新增新的項,也可以控制列表控制項的顯示模式。mfc提供了clistctrl類進行支援。

18樹形控制項(tree control):用來顯示一系列專案的層次關係,最典型的例子是顯示磁碟上的檔案與資料夾。如果有子專案的話,單擊樹形控制項中的專案可以展開或者收縮其子專案。mfc提供了ctreectrl類進行支援。

19屬性表控制項(tab control):用來包含大量的控制項,可以滿足使用者顯示或者獲取大量資料的要求。每個屬性表又分為好幾個屬性頁,這些屬性頁由各自的標籤進行區分,這些屬性頁中都可以包容其他控制項。在顯示屬性表的時候,一次只能夠顯示乙個屬性頁的全部內容,同時顯示其他屬性頁的標籤,使用者通過單擊標籤開啟相應的屬性頁。mfc提供了ctabctrl類進行支援。

21 高階編輯框(rich edit):編輯控制項功能的擴充套件。在高階編輯框中,除了簡單的輸入和編輯字串外,使用者還可以為字元或段落指定特定的格式,使用者甚至還可以向高階編輯框中插入ole項。高階編輯框基本上實現了乙個帶格式的文字編輯器功能,而只需要使用者新增少量的介面。mfc提供了cricheditctrl類進行支援。

22 日曆控制項(month calender):看似與真正的日曆類似,操作也類似,直觀的為使用者提供了觀察和顯示當前日期的途徑。mfc提供了cmonthcalctrl類進行支援。

23 日期/時間選擇器(date time picker):向使用者提供了一種直觀的選擇日期和時間的方法、日期/時間選擇器在外觀上類似於乙個組合框,但是當使用者單擊下拉箭頭時就會展開乙個日曆控制項供使用者選擇,而一旦使用者做出了選擇,日期/時間選擇器會自動顯示新的日期/時間。mfc提供了cdatetimectrl類進行支援。

24 ip位址控制項(ip adress):ip位址控制項用來輸入和編輯ip位址。該控制項外觀類似於乙個編輯框,但是可以自動對輸入的字元按3個一組進行區分和加間隔圓點。ip位址控制項為開發支援internet技術的程式提供了方便。mfc提供了cipaddressctrl類進行支援。

26 擴充套件組合框(extended combo box):在普通組合框的基礎上還支援影象列表。即,可以在組合框中顯示特定的圖示表示相應的選擇,而不僅僅是顯示文字。mfc提供了ccomboboxex類進行支援。

所有控制項的公共屬性:

id:控制項的資源標識。

visiable:控制項是否可見。

disabled:控制項是否被禁止、被禁止的控制項無法接受鍵盤和滑鼠輸入。

group:是否從這個空間開始乙個新組。

tab stop:在程式中是否可以用【tab】鍵切換到這個控制項。

help id:是否給控制項分配乙個幫助標識,幫助標識基於控制項本身的資源標識。

client edge:給控制項增加乙個凹陷的邊界,使整個控制項看起來像是凹下去的一樣。

static edge:給控制項增加乙個邊界。

modal frame:給控制項增加乙個3維的框架,與client edge相反,它是凸出來的。

transparent:擁有此屬性的視窗是透明的,它下面的視窗不會被它遮掩住。

accept files:擁有此屬性的視窗可以接收拖放檔案,如果乙個檔案被拖動到這個控制項上面,控制項會收到wm_dropfiles訊息。

no parent notify:表示控制項不向其父視窗傳送wm_parentnotify訊息。

right aligned text:表示文字右對齊。

以上屬性可通過控制項的屬性對話方塊進行設定,在屬性對話方塊中按【f1】鍵可以檢視屬性的幫助資訊。

每一種控制項都由乙個mfc控制項類來管理,當通過資源編輯器在對話方塊上新增乙個控制項時,visualc++會自動為控制項類生成乙個例項,即物件,並呼叫建構函式,當對話方塊關閉時,其各個子控制項物件被自動銷毀。

也可以不使用資源編輯器,自己在程式中寫**建立、顯示控制項並設定控制項的屬性。

所有的控制項類都繼承自cwnd,控制項的某些操作和屬性設定需要用到cwnd本身的成員函式,cwnd某些函式經常用來操縱控制項和設定控制項屬性。

setwindowtext:設定控制項上要顯示的標題文字,即用來設定控制項的caption屬性

getwindowtext:得到控制項的標題文字

enablewindow:設定控制項的disabled屬性,即社會自控件是否可以接收鍵盤和滑鼠的輸入

setwindowpos:改變視窗的大小、位置和z軸次序。

movewindow:改變視窗的大小和位置

getwindowrec:得到視窗的大小、位置(資訊存放在乙個矩形結構中)。

getclientrect:得到視窗客戶區的大小(資訊存放在乙個矩形結構中 )

showwindow:設定視窗的可見性(即視窗是否可見)

setwindowtext/getwindowtext還可以用來設定/得到對話方塊的標題文字。

MFC控制項

1.mfc中的radio控制項是成組的,所以需要把radio的group屬性設為true,否則中右鍵 新增變數時會沒有radio控制項的id出現。2.mfc中的list control控制項出現不顯示資料的情況,那是因為list control控制項中的view屬性預設為icon,需要將view屬性...

MFC控制項

1 列表框 常用方法 addstring 在列表框最後新增列表項 insertstring在列表框中指定位置新增列表項 deletestring刪除一列表項 resetcontent清空列表項 findstring 查詢列表項 getcursel 返回當前選擇項的索引 setcursel 選擇某個列...

MFC控制項篇之屬性對話方塊

使用屬性對話方塊 屬性對話方塊不同於普通對話方塊的是它能同時提供多個選項頁,而每頁都可以由資源編輯器以編輯對話方塊的方式進行編輯,這樣給介面開發帶來了方便。同時使用上也遵守普通對話方塊的規則,所以學習起來很方便。屬性對話方塊由兩部分構成 多個屬性頁 cpropertypage 和屬性對話方塊 cpr...