我想使用Qt 5创建以下内容: -
界面包含一个输入框,它接受颜色输入,框根据给定的输入改变颜色
根据输入更改小部件颜色的GUI
答案 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)}");
}