qwidget* createeditor(qwidget *parent, const qstyleoptionviewitem &option, const qmodelindex &index) const
1.重寫委託的createreditor函式的時候不能去掉const,否則設定樣式不起作用
2.設定下拉框的樣式如下:
"qcombobox"
"qcombobox::drop-down"
"qcombobox::down-arrow"
"qcombobox:disabled"
"qcombobox qabstractitemview"
"qcombobox qabstractitemview::item"
"qcombobox qabstractitemview::item:selected"
"qcombobox qscrollbar::vertical"
"qcombobox qscrollbar::handle::vertical"
"qcombobox qscrollbar::handle::vertical::hover"
"qcombobox qscrollbar::add-line::vertical"
"qcombobox qscrollbar::sub-line::vertical").arg(style_main_color).arg(style_hover_color)
但是發現中間的三條設定qabstractitemview的內容沒有起作用,原因是 qcombobox *editor = new qcombobox(parent); qabstractitemview的樣式被下拉框的父物件qwidget * parent覆蓋掉了
正確的設定方法:
parent->setstylesheet(qstring("qcombobox"
"qcombobox::drop-down"
"qcombobox::down-arrow"
"qcombobox:disabled"
"qcombobox qabstractitemview"
"qcombobox qabstractitemview::item"
"qcombobox qabstractitemview::item:selected"
"qcombobox qscrollbar::vertical"
"qcombobox qscrollbar::handle::vertical"
"qcombobox qscrollbar::handle::vertical::hover"
"qcombobox qscrollbar::add-line::vertical"
"qcombobox qscrollbar::sub-line::vertical").arg(style_main_color).arg(style_hover_color));
直接設定父物件的樣式而不是下拉框的樣式 自定控制項中的委託
1 委託是函式的指標 2 方法簽名 引數型別 個數 順序 返回值 3 delegate void speakdelegate 定義個委託委託的方法簽名要與想指向 引用 方法的方法簽名要一致 例項化委託 方式1 speakdelegate speak new speakdelegate 方法名 spe...
自定控制項中的委託
1 委託是函式的指標 2 方法簽名 引數型別 個數 順序 返回值 3 delegate void speakdelegate 定義個委託委託的方法簽名要與想指向 引用 方法的方法簽名要一致 例項化委託 方式1 speakdelegate speak new speakdelegate 方法名 spe...
自繪按鈕控制項的2個注意點
1 宣告自繪屬性 有兩種方式,一種是通過資源檢視修改按鈕的屬性,將owner draw改為true 另一種是通過 實現。在重寫的presubclasswindow中新增一句自繪屬性 void cmybutton presubclasswindow 2 繪製按鈕 通過過載虛函式drawitem實現,注...