1. 程式人生 > >【轉】Qt --------QCombobox元件的使用

【轉】Qt --------QCombobox元件的使用

方法/事件:

屬性:

樣式:

    QComboBox* m_combox;

    m_combox = new QComboBox(this);

     QStringList test = QStringList()

                <<"111"

                <<"222";

    mp_combox->addItems(test);

    mp_combox->show();

 

經驗之談:

http://blog.csdn.net/c_arm/article/details/6704680
QComboBox外掛是一個集按鈕和下拉菜單于一體的外掛。


QComboBox在佔用最小螢幕空間的情況下為使用者提供一個下拉選單選項。


QComboBox在顯示當前選項的同時還彈出一系列可選擇的專案。使用者也可以編輯ComboBox。


ComboBox可以包含pixmap和字串(insertItem和setItemText)。對於可編輯的ComboBox,clearEditText可以被用來清除用於顯示的字串而不改變ComboBox的內容。


當ComboBox的當前值改變時可以發出兩個訊號(currentIndexChanged和activated)。不管是否在程式中預先設定或存在使用者互動,currentIndexChanged總會被激發,而activated只有在存在使用者互動的時候才會被激發。highlighted訊號當用戶點亮comboBox下拉選單時被激發。這三種訊號都存在QString和int兩個版本。如果使用者選擇或點選一個pixmap,只有int訊號會被激發。當一個可編輯的combobox的出現改變的時候,editTextChanged訊號就會被激發。


當用戶往一個可編輯的combobox裡輸入一個新的字串的時候,combobox外掛可以將其插進去或不插進去,而且外掛還可以把它插到很多位置。預設的規則是AtBottom,但也可以用setInsertPolicy改變規則。


可以通過QValidator來限制可編輯combobox的輸入(setValidator)。預設情況下,所有出入都可以接受。


ComboBox可以用insertItem來新增專案。專案可以用setIemText來改變。一個專案可以用removeItem移除,所有專案可以用clear一起移除。當前專案的內容可以用currentText返回,數字專案的內容可以用text返回。當前專案可以用setCurrentIndex設定。comboBox專案數可以用count返回;專案數的最大值可以用setMaxCount來設定。可以用setEditable使專案可編輯。對於可編輯的combobox,可以用setCompleter來設定自動完成,使用者是否可以新增副本可以用過setDuplicatesEnabled來設定。


QComboBox使用model/view架構來顯示下拉列表和儲存專案。預設情況下,QStandardItemModel儲存專案,QLIstView子類顯示下拉列表。使用者可以訪問model和view,但QComboBox也提供了函式來設定和取得資料(setItemData和itemText)。也可以設定一個新的model和view。對於combobox標籤的文字和標誌來說,使用了擁有Qt::DisplayRole和Qt::DecorationRole的model的資料


 comboBox->setEditable(true);設定下拉選單是否可編輯,true可編輯,false不可編輯

 comboBox->showPopup(); 顯示 下拉選單元件的各個專案
---------------------
作者:thinkpadlove
來源:CSDN
原文:https://blog.csdn.net/dong_zhihong/article/details/7823555?utm_source=copy
版權宣告:本文為博主原創文章,轉載請附上博文連結!