2013-09-04 3 views
0

Я пытаюсь добавить элементы в QStandardItemModel, все эти элементы имеют тип QStandardItem. Я хотел знать, есть ли способ подключить QPushButton к модели. Другими словами, это любые свойства QStandardItem, которые я мог бы изменить, чтобы они отображались как кнопка Pushдобавить QStandardItem типа PushButton

+0

Вам нужно только apperance или вам нужно поведение? –

+0

Появление и поведение. Самое главное, поведение, которое может вызвать изменение элемента сигнала в модели – MistyD

+1

Используйте метод setItemWidget вашего представления. Это даст поведение. Если вы хотите оба - вы должны создать пользовательский делегат. –

ответ

-1

Использование таблиц стилей - ваш лучший выбор. Вот пример, где я стилизовал элементы в QListWidget, чтобы выглядеть как вкладки. Маленький массаж может дать ему взгляд кнопки.

/* make the property editor list look like tabs */ 
QListWidget#PropertyEditor_List 
{ 
    background-color: Transparent; 
    padding-right: 0px; 
    padding-top: 2px; 
    padding-left: 2px; 
} 
QListWidget#PropertyEditor_List::item 
{ 
    padding: 3px; 
    margin-left: 3px; 
    background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 white, stop:1 Transparent); 
    border-left: 1px solid rgb(145,155,155); 
    border-top: 1px solid rgb(145,155,155); 
    border-bottom: 1px solid rgb(145,155,155); 
    border-right: 0px; 
    border-top-left-radius: 3px; 
    border-bottom-left-radius: 3px; 
} 
QListWidget#PropertyEditor_List::item:hover, QListWidget#PropertyEditor_List::item:selected 
{ 
    background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 rgb(255,200,60), stop:0.039 rgb(255,200,60), stop:0.04 white, stop:0.4 white, stop:1 Transparent); 
    border-left-color: rgb(230,139,44); 
} 
QListWidget#PropertyEditor_List::item:selected 
{ 
    margin-left: 0px; 
    background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 rgb(255,200,60), stop:0.039 rgb(255,200,60), stop:0.04 white); 
    border-left-color: rgb(230,139,44); 
    color: black; 
} 
+0

оригинальный вопрос о qstandarditemmodel не qlistwidget. И (как пояснялось в их комментариях) они хотели что-то, что при щелчке будет излучать сигнал, а не только появление кнопки. – neuronet

Смежные вопросы