使用Qt 5改变颜色的小部件

时间:2018-04-18 09:00:36

标签: qt colors widget qt5

我想使用Qt 5创建以下内容: -

界面包含一个输入框,它接受颜色输入,框根据给定的输入改变颜色

根据输入更改小部件颜色的GUI GUI for changing widget color according to input

2 个答案:

答案 0 :(得分:0)

您需要点击Signals & Slots按钮,然后从QLineEdit获取文字并设置QLabel的样式表。 如果您需要有关代码的帮助,请发布您的进度或询问具体的代码问题

答案 1 :(得分:0)

好的,我假设你已经绑定了点击的信号..现在我要给你2个选项来解决这个问题:

1°:信任QColor进行更改(这将使代码更简单,但仅限于Qt在系统中的颜色)函数将是:

void MainWindon::on_okButton_clicked()
{
QString text = ui->lineEdit->text();`

ui->label->setStyleSheet("QLabel {border: 3px solid black; background-color: " + text + "}");
}

2°)处理if语句(可能真的很费劲但你可以选择控制颜色):

void MainWindon::on_okButton_clicked()
{
     QString text = ui->lineEdit->text();`

     if(text == "red")
           ui->label->setStyleSheet("QLabel {border: 3px solid black; background-color: rgb(255, 0, 0)}");
     else if(text == "green")
           ui->label->setStyleSheet("QLabel {border: 3px solid black; background-color: rgb(0, 255, 0)}");
     else if(text == "blue")
           ui->label->setStyleSheet("QLabel {border: 3px solid black; background-color: rgb(0, 0, 255)}");
}