Ho un:Come stile un widget Qt e non i suoi figli con fogli di stile?
class Box : public QWidget
e ha
this->setLayout(new QGridLayout(this));
Ho provato a fare:
this->setStyleSheet("border-radius: 5px; "
"border: 1px solid black;"
"border: 2px groove gray;"
"background-color:blue;");
this->setStyleSheet("QGridLayout{"
"background-color:blue;"
"border-radius: 5px; "
"border: 1px solid black;"
"border: 2px groove gray;"
"}"
);
this->setObjectName(QString("Box"));
this->setStyleSheet("QWidget#Box {"
"background-color:blue;"
"border-radius: 5px; "
"border: 1px solid black;"
"border: 2px groove gray;"
"}"
);
ma la prima colpisce solo gli elementi che vengono aggiunti, gli altri due non fare nulla . Voglio che la casella abbia angoli arrotondati e un bordo (bonus per come fare le linee tra le righe).
Come si ottiene il foglio di stile che influisce sul widget Box e non sui suoi figli?
Non è perché il widget è un widget personalizzato, ma perché eredita dalla classe di base 'QWidget' la cui funzione' paintEvent' non fa nulla.Se invece hai ereditato da 'QFrame', avresti già una funzione' paintEvent'. – alexisdm
@alexisdm grazie per questo, buona sapere – chacham15