2016 - 2024

感恩一路有你

qt怎么给下拉框改背景色 qt按钮默认颜色?

浏览量:3805 时间:2023-05-11 17:01:42 作者:采采

qt按钮默认颜色?

Qt中给按钮可以设置颜色的方法

第一种_CSS风格

第二种_使用QPalette类

第三种_使用QColor的另一种方法

对于界面编程来说,色彩那绝对是是一个继续重点关注的对象,界面好不比较好看,色彩占有一大半。这里我在去学习给界面涂色时做的一个小小的笔记。

第一种_CSS风格

button-setStyleSheet(background-color:yellow);11

这是最简单的一种,但不具体用法,而且当按钮可以设置不胜感激属性颜色就看不见了

button-setFlat(true);11

情况下,只能按钮按钮下的状态才能总是显示出颜色。

第二种_在用QPalette类

可以使用QPalette类也分两种情况:

只不过建议使用QPalette有前提:我们要把按钮放到QFrame框里,而按钮窗体接受两项可以设置

//扔到QFrame里buttonFramenewQFrame;QVBoxLayout*buttonLayoutnextQVBoxLayout(buttonFrame);buttonLayout-addWidget(button);12341234

//接受两项设置button-setAutoFillBackground(true);button-setFlat(true);123123

1.建议使用QColor类

QColorcolor(255,0,255);QPalettepbuttonFrame-palette();(QPalette::Button,color);button-setPalette(p);12341234

2.不使用QColor

QPalettepbuttonFrame-palette();(QPalette::Button,Qt::green);button-setPalette(p);123123

第三种_建议使用QColor的另一种方法

这种方法是全局函数Qt的提前预定义颜色,用选定的可以预定义颜色给控件赋值,动不动爱和QComboBox下拉框和可以使用,将声望兑换到的预定义颜色填下拉框以供选择。

定义下拉框

comboBoxOne

声望兑换Qt提前预定义颜色,填到下拉框里

voidWidget::fillColorList(QComboBox*comboBox){QStringListcolorListQColor::colorNames();QStringcolor;foreach(color,colorList){QPixmappix(QSize(70,20));(QColor(color));comboBox-addItem(QIcon(pix),NULL);comboBox-setIconSize(QSize(70,20));comboBox-setSizeAdjustPolicy(QComboBox::AdjustToContents);}}1234567891011121312345678910111213

定义呐喊之声下拉框变化信号的槽函数(改变按钮颜色)

voidWidget::changeColor(){QStringListcolorListQColor::colorNames();QColorcolorsQColor(colorList[comboBoxOne-currentIndex()]);QPalettepOnebuttonFrame-palette();(QPalette::Button,colors);button-setPalette(pOne);buttonFrame-version();}123456789123456789

信号和槽函数的连接

这里让我十分困惑的是,信号槽连接上的没法用Qt4旧版版本的连接,新版本就会报错。有没哪位大佬能给回答看看呀?

connect(comboBoxOne,SIGNAL(activated(int)),this,SLOT(changeColor()));11

Qt5魅力无穷,另外初学者,只觉得了路途漫漫的愁…

combox控件在任务栏隐藏的情况下无法下拉qt?

可以使用QComboBox::setView(QAbstractItemView * itemView)这个方法,把你QListWidget的句柄弄进去

颜色 按钮 方法

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。