首页 > 其他分享 >Qt 设置QPushButton背景色

Qt 设置QPushButton背景色

时间:2024-02-22 10:58:10浏览次数:26  
标签:设置 QPalette QPushButton 背景色 palette1 Qt

刚开始编写的设置背景色代码用的是QPalette类:

1 QPalette palette1=ui->pushButton->palette();
2 palette1.setColor(QPalette::ButtonText,Qt::red);//设置字体颜色为红色
3 palette1.setColor(QPalette::Button,Qt::green);//设置背景颜色为绿色
4 ui->pushButton->setPalette(palette1);

运行结果:按钮背景色还是默认的,palette1.setColor(QPalette::Button,Qt::green);不起作用;

在设计界面palette属性中进行设置的结果也不起作用。

在网上查找原因:

在windows中QPushButton的颜色涉及到样式表,所以应该设置样式表才可以,可以使用一下代码进行更改:

ui->TH_2->setStyleSheet("background-color: rgb(170, 0, 255);");

或者在设计界面属性中的stylesheet属性中进行设置。

windows下其他的控件,两种方法都可以。

标签:设置,QPalette,QPushButton,背景色,palette1,Qt
From: https://www.cnblogs.com/ybqjymy/p/18026825

相关文章

  • Qt QWindowsWindow::setGeometryDp: Unable to set geometry问题
    总结原因:由于子窗口和父窗口的大小关系不健康,导致父窗口resize失败,失败后会自定义大小解决方法:首先,修改父窗口尺寸,保证其大小可以容纳子部件,可以使用setFixSize()之类的函数修改父窗口尺寸。其次,一定要保证修改父窗口尺寸的函数是放在窗口布局代码之前,如图,我的setIn......
  • Qt 颜色对话框QColorDialog弹出时应用程序输出栏出现QWindowsWindow::setGeometry: Un
    引言在项目中点击按钮,弹出颜色选择对话框,但同时应用程序会在应用程序输出一栏中显示QWindowsWindow::setGeometry:Unabletosetgeometry180x30+345+311(frame:202x86+334+266)onQWidgetWindow/"QColorDialogClassWindow"on"\\.\DISPLAY1".Resultinggeometry:5......
  • qt vs 引用第三方lib
    项目目录,plug是资源文件,ZL.Main是根目录(发布后需要把plug复制在debug中exe同目录 一:该目录填include目录,可以相对路径可以绝对路径 二:该目录填lib目录,可以相对路径可以绝对路径 三:该项填lib文件名,有几个填写几个 第四:配置平台管理器 ......
  • MQTT协议及其使用案例
    MQTT概述MQTT是基于TCP/IP协议栈构建的异步通信消息协议,是一种轻量级的发布、订阅信息传输协议。可以在不可靠的网络环境中进行扩展,适用于设备硬件存储空间或网络带宽有限的场景。使用MQTT协议,消息发送者与接收者不受时间和空间的限制。Docker部署MQTT(采用docker-compose.y......
  • qtcpsocket连接状态
      QTcpSocketsocket;//连接到远程主机socket.connectToHost("remoteHost",1234);//获取连接状态QAbstractSocket::SocketStatesocketState=socket.state();//根据连接状态进行相应处理if(socketState==QAbstractSocket::UnconnectedState){//未连......
  • PySide基础三大件_QPushButton
    简介QPushButton就是一种窗口上的按钮展示示例代码#NOTEQPushButton是按钮fromPySide6.QtWidgetsimportQApplication,QMainWindow,QPushButtonclassMyWindow(QMainWindow):def__init__(self):super().__init__()btn=QPushButton('点我',se......
  • Qt程序执行报错:"This application failed to start because not Qt platform plugin c
    Qt编译的exe程序执行时报错:出现以上错误的原因是由于的系统环境路径缺失或者exe程序目录下缺少对应的dll导致。以上为缺少对应的Qtplatformplugin。在Qt的安装目录下将platforms整个目录拷贝到exe所在目录下,即可执行。如果提示缺少对于的xxx.dll直接将对应缺失......
  • 给 PyQt5 登录添加记住用户密码功能,并优化一些内容
    使用PyQt5(PySide2)+SQLAlchemy做一个登录注册页(七)本文将介绍自己用PyQt5+SQLAlchemy做的一个登录注册页,使用邮箱接收验证码,本文介绍是前后端未分离的实现方式,后续将出一个前后端分离的,你可以将PyQt5改为PySide2以获得更宽松的开源协议本文由于涉及到的代码较多,将会是一......
  • Qt 设置button互斥,一组button只能选中一个
    一、同一容器内互斥效果1.先在界面是拖入一个控件容器,这里以QGroupBox为例2.再放进来几个按钮控件3.设置按钮属性,第一个红框勾选是设置按钮可选,第二个勾选就是设置自动互斥,当同一容器内的按钮勾选了这个选项就会自动互斥二、不同容器内互斥效果1.还是先设置所要互斥的......
  • 给 PyQt5 注册页,添加注册逻辑代码,实现用户的注册验证
    使用PyQt5(PySide2)+SQLAlchemy做一个登录注册页(五)本文将介绍自己用PyQt5+SQLAlchemy做的一个登录注册页,使用邮箱接收验证码,本文介绍是前后端未分离的实现方式,后续将出一个前后端分离的,你可以将PyQt5改为PySide2以获得更宽松的开源协议本文由于涉及到的代码较多,将会是一......