2015-08-18 1 views
1

Je suis très nouveau à Qt et je fais quelques changements à un programme. Ce que j'essaye de faire est d'obtenir un QPushButton appelé start_ pour changer sa couleur quand on clique dessus. Le bouton est déclaré ici:Qt Définir l'arrière-plan Couleur de QPushButton

void StatusTab::CreateControlFrame() { 
start_ = new QPushButton(tr("Start Capture"), this); 
start_->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); 
button_layout->addWidget(start_, 0, 0, 1, 1); 
connect(start_, SIGNAL(clicked()), this, SLOT(OnStartClicked())); 
} 

Je suppose que le code doit être ajouté dans la méthode OnStartClicked() mais je ne suis pas sûr de ce que les fonctions que je dois utiliser. Toute aide serait appréciée.

Répondre

3

Avez-vous essayé Qt Designer, avec lequel vous pouvez ajouter des widgets et ajuster leur apparence.conveniently. Qt fournit QSS pour personnaliser les widgets. Examples .Dans ce cas, vous pouvez utiliser

start_->setStyleSheet("QPushButton:pressed { \ 
    background-color: rgb(224, 0, 0);  \ 
    border-style: inset;      \ 
}"); 

Vous pouvez définir QSS dans Qt Designer.

+0

Merci! Cela a bien fonctionné – oodan123