qt - Style QComboBox's sub-control down-arrow when mouse is hovering over the QComboBox via QSS -
i know how style qcombobox when mouse hovering doing:
pcombobox->setstylesheet(pcombobox->stylesheet()+qstring(" qcombobox:hover{css style here}")) and know style qcombobox's sub-control down-arrow's style via:
pcombobox->setstylesheet(pcombobox->stylesheet()+qstring(" qcombobox::down-arrow{css style here}")) but don't know how style qcombobox's sub-control down-arrow when mouse hovering on qcombobox via qss. have idea?
i don't know qss powerful enough this(i think no), eventfilter can easy:
bool mainwindow::eventfilter(qobject *obj, qevent *event) { if (obj == ui->combobox && event->type() == qevent::enter) { //user enters combobox, apply stylesheet ui->combobox->setstylesheet("qcombobox::down-arrow{background-color: red}"); } else if(event->type() == qevent::leave)//user leaves combobox, set default settings ui->combobox->setstylesheet(""); return qobject::eventfilter(obj, event); } to use eventfilter should also:
protected: bool eventfilter(qobject *obj, qevent *event);//in header and
qapp->installeventfilter(this);//in constructor
Comments
Post a Comment