首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使选中的QPushButton看起来与按下时相同?

要使选中的QPushButton看起来与按下时相同,可以通过设置QPushButton的样式表来实现。可以使用QPushButton的伪状态来定义选中时的样式。

以下是一种实现方式:

  1. 创建一个QPushButton对象,并给它设置一个唯一的objectName,例如"myButton"。
  2. 在样式表中定义QPushButton的伪状态样式。可以使用QSS(Qt样式表)语法来设置样式。例如:
代码语言:txt
复制
QPushButton#myButton:checked {
    /* 设置选中时的样式 */
    background-color: blue;
    color: white;
}

在上面的例子中,当QPushButton的checked伪状态为真时(即按钮被选中),设置背景颜色为蓝色,文字颜色为白色。

  1. 将样式表应用到QPushButton上。可以使用QPushButton的setStyleSheet方法来设置样式表。例如:
代码语言:txt
复制
my_button = QPushButton()
my_button.setObjectName("myButton")
my_button.setStyleSheet("QPushButton#myButton:checked { background-color: blue; color: white; }")

这样,当按钮被选中时,它的背景颜色将变为蓝色,文字颜色将变为白色。

注意:以上示例中的样式表只是一种示范,你可以根据自己的需求自定义样式。

关于QPushButton的更多信息和使用方法,你可以参考腾讯云的官方文档:QPushButton类文档

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

C++ Qt开发:PushButton按钮组件

/*背景颜色*/ background-color:rgb(14 , 135 , 228); /*左内边距为3像素,让按下时字向右移动3像素*/ padding-left...:3px; /*上内边距为3像素,让按下时字向下移动3像素*/ padding-top:3px; } 此时会呈现三种状态,当默认未被选中时会使用QPushButton来渲染,而QPushButton...:hover则用于悬停时的显示,最后的QPushButton:pressed则是被按下是的颜色渲染,如下所示; 接着我们来看一下如何添加背景图片到Qt中并使用QSS将背景附加到PushButton上,首先分别准备一些素材文件...,这里提供三个不同的png图片; 下面是普通态的背景图,用了同一张背景图: 下面是悬停态的背景图: 下面是按下态的背景图: 接着就是要把这些图片添加到Qt中的资源中去,在项目主目录上右键选中Add New...,并在项目根目录新建一个lyshark目录并将所需文件拖拽到该目录下,如下图; 继续点击AddFiles按钮依次选中资源并添加到项目源文件中,当添加结束后按下Ctrl+S保存RC文件,即可看到如下图所示

1K10
  • 【QT】 控件 -- 按钮类(Button)

    当鼠标左键按住不放时: - 如果设为 true,则会持续产生鼠标点击事件(相当于游戏手柄上的“连发”效果); - 如果设为 false,则必须释放鼠标,再次按下鼠标时才能产生点击事件。...其中,default 和 audoDefault 影响的是按下 enter 时自动点击哪个按钮的行为,flat 把按钮设置为扁平的样式。...对于一组按钮而言,如果其中一个按钮被选中,则其他按钮的选中状态将被取消。此属性通常用于单选按钮(如 QRadioButton),但也可以应用于 QPushButton 来实现类似的行为。...或者 禁用某个选项被选中,如下: 运行程序可以看到,点击 “其他” 按钮的时候,虽然不会被选中,但是可以触发点击事件,使上面的 label 显示性别为其他 但是如果使用 setEnabled 是更彻底的禁用按钮的方式...+ 鼠标标释放触发的 pressed 是鼠标按下触发的 released 是鼠标释放触发的 toggled 是 checked 属性改变时触发的 总的来说,toggled 是最适合 QRadioButton

    6200

    学习 QT 过程中的一些笔记

    学习 QT 时候做的一些笔记 目录 目录 按钮常用控件 API QT 窗口体系 信号和槽 点击按钮关闭窗口 自定义信号和槽 当自定义信号和槽出现重载 无参信号和有参信号与槽连接 Lambda 表达式 利用...信号和槽 点击按钮关闭窗口 // 参数1 信号的发送方 参数2 发送的信号(函数地址) 参数3 信号的接收方 参数4 处理的槽函数 connect(btn2, &QPushButton::clicked...= new QPushButton("同时与槽连接", this); btn_3->move(0, 50); connect(btn_3, &QPushButton::clicked, this, &Widget...( ) 参数可以通过按值 (如: (a, b)) 和按引用 (如: (&a, &b)) 两种方式传递 可修改标示符 mutable 声明,加上 mutable 修饰符后,可以修改按值传递进来的拷贝 (...,1 半选中,2 选中 QListWidget 列表容器 QListWidget* item = new QListWidgetItem(“hello”); ui->listWidget->addItem

    1.2K40

    Qt 学习记录

    函数体内可以使用 Lambda 所在类中的成员变量。 a。将 a 按值进行传递。按值进行传递时,函数体内不能修改传递进来的 a 的拷贝,因为默认情况下函数是const 的。...② 操作符重载函数参数 标识重载的 () 操作符的参数,没有参数时,这部分可以省略。参数可以通过按值(如:(a,b))和按引用(如:(&a,&b))两种方式进行传递。...按值传递函数对象参数时,加上 mutable 修饰符后,可以修改按值传递进来的拷贝(注意是能修改拷贝,而不是值本身)。...扩展知识: 按值传递与按引用传递的区别? 按值传递,不会改变当前调用函数里实参,按引用传值,会改变调用里面实参。 按值传递,可以保护实参不被修改,效率比较低。...这些对话框在所有程序中几乎相同,因此没有必要在每一个程序中都自己实现这么一个对话框。

    7.2K50

    初识Qt · 实现Hello world的N种细节和坐标系

    第一种是纯代码的方式,十分简单,一个拖拽,一个输入就完事儿了,我们不止可以双击该文本操作,我们也可以选中右边的属性列表: 这个text即文本编辑内容。...Push button实现 同样,我们先使用一下图形化的方式: 选中push button,直接拖拽,然后输入对应的内容即可。...你说,这个按钮按下了难道就按下了吗?显然不能,所以我打算在这里十分简单的介绍一下信号槽这个概念。...简述信号与槽 信号与槽这个概念可以说是QT中的核心,但是更细节的地方呢,我们放在之后介绍,我们现在简单理解就是,当我们按下按钮之后,会发送一个信号,然后我们可以使用connect函数捕捉,执行关联函数,...* pushbutton; }; 不然我们访问构造函数的时候,该成员都不存在我们如何访问?

    5510

    Qt Style Sheet实践(一):按钮及关联菜单

    QToolButton 如果QToolButton关联了一个菜单,那么和QPushButton是相同的处理方式。...QListView(QListWidget) show-decoration-selected属性控制选中时是选中整项还是仅仅只是项的文本,其他和QTableView相同。...QTreeView(QTreeWidget) show-decoration-selected属性控制选中时是选中整项还是仅仅只是项的文本, 子组件::branch和::item用于精细化控制。...显然,系统默认的箭头号不太和谐,于是我们再尝试换掉这个箭头号,并且在菜单打开时设置为向下的箭头号,菜单关闭时设置为水平向右的箭头号: QPushButton::menu-indicator:open {...但此时我们根本看不到鼠标划过的效果,因此给当前选中的菜单项一个背景色吧(rgb(234, 243, 253))。效果如何呢: ?        根据不同的需要,定制出来的外观也是千差万别的。

    4.7K50

    Qt中使用标准输入框

    QFrame::Panel 画一个平板使内容看起来凸起或者凹陷 QFrame::WinPanel 像Panel,但QFrame绘制三维效果的方式和...是可选的,如果非NLL,则当用户按下对话框的OK按钮时,这个bool变量会被置为true,可以由这个去判断用户是按下的OK还是Cancel,从而获知这个text是不是有意义; 第七个参数flags...第五个参数current是QStringList 中默认的条目的下标; 第六个参数editable是设置文字是否可以编辑 第七个参数 ok是可选的,如果非NLL,则当用户按下对话框的OK...按钮时,这个bool变量会被置为true,可以由这个去判断用户是按下的OK还是Cancel,从而获知这个text是不是有意义; 第八个参数flags用于指定对话框的样式。...表示最大值 第七个参数step表示各个选项的间隔 第八个参数ok是可选的,如果非NLL,则当用户按下对话框的OK按钮时,这个bool变量会被置为true,可以由这个去判断用户是按下的OK还是

    1.4K40

    【QT】QSS

    一、QSS QSS可以说是拿了CSS的一部分过来用,是CSS的简化版本 1、基本语法 选择器 { 属性名:属性值; } 将界面上所有的QPushButton文本颜色都改为红色 QPushButton...,然后将style设置到窗口中 (2)伪类选择器 伪类选择器 说明 :hover 鼠标放到控件上 :pressed 鼠标左键被按下时 :focus 获取输入焦点时 :enabled 元素处于可用状态时...:checked 被勾选时 :read-only 元素为只读状态时 取反伪类选择器不再单独出一个名字,而是在:后面加!...selection-color: rgb(60, 63, 65);//选中文字的文本颜色 } (5)整合起来用一个登陆界面展示 先创建一个qrc文件载入一张图片作为登陆窗口的背景图 在ui...建立一个与widget同大小的frame,将以下部件在frame上创建出来,然后调整frame样式表 都是上面提到的内容 QFrame { //设置图片作为背景 border-image: url

    8810

    【Python篇】PyQt5 超详细教程——由入门到精通(序篇)

    现在,我们将进一步了解 PyQt5 中的 布局管理,并学习如何合理地组织多个控件,使界面更具交互性和美观性。...2.2 基本的 PyQt5 窗口与布局 QWidget 与 QMainWindow 的区别 QWidget:是 PyQt5 中的所有控件(如按钮、标签、文本框等)的基类。...self.line_edit.returnPressed.connect(self.return_pressed):连接用户按下“回车键”时的信号到 return_pressed 槽函数,获取输入文本并打印出来...currentIndexChanged.connect():连接下拉列表选项改变的信号到 combobox_changed 槽函数,当用户选择不同的选项时会打印选中的文本。...最后,我们深入探讨了 PyQt5 中的常用控件,如 QLabel、QPushButton、QLineEdit 和 QCheckBox,展示了如何使用这些控件处理基本的用户交互。

    9.6K24

    解决QPushButton的toggled无法触发setvisible

    转载请注明:转载自 祥的博客 原文链接:http://blog.csdn.net/humanking7/article/details/44095283 发现问题 我想做一个番茄钟软件,顺便学习一下Qt...但是在做的时候发现toggled无法触发setvisible(),对比《C++ GUI Qt4编程》的源码之后发现是一个关于QPushButton的细节问题没有搞清楚。 想完成的效果如下图: ?...---- 解决方案 QPushButton 必须是 checkable 的,在使用用 Designer 设计时必须选上。 具体操作如下图: ?...---- 问题探索 默认状况下checkable是不选中的,Button默认为触发按钮 (trigger button),按下去马上弹起来 选中checkable后,Button变成切换按钮 (toggle...button),可以有两种状态:按下 / 弹起,这也就是为什么Task List按钮在两幅图中状态的差别。

    1.4K30

    Python:PyQt学习

    mousePressEvent(QMouseEvent) 鼠标按下时触发 mouseReleaseEvent(QMouseEvent) 鼠标释放时触发 mouseDoubleClickEvent(...QMouseEvent) 鼠标双击时触发 mouseMoveEvent(QMouseEvent) 鼠标按下后移动时触发 setMouseTracking(True) 追踪设置后,没有按下的移动也能触发...不跟踪 鼠标移动时,必须处于按下状态,才会触发mouseMoveEvent事件 跟踪 鼠标移动时,不处于按下状态,也会触发mouseMoveEvent事件 API测试 from PyQt5...信号* ​ 都是继承下来的 QAbstractButton pressed() 鼠标按下信号 released() 鼠标释放 clicked(checked = false) 控件内按下+控件内释放..., 发射此信号 buttonPressed(int/QAbstractButton) 当按钮组中的按钮被按下时, 发射此信号 buttonReleased(int/QAbstractButton

    10.7K10

    Qt5实战第二篇:Qt5的基本控件与布局

    Qt5的布局管理器布局管理器用于自动管理控件的位置和大小,以确保用户界面在不同窗口大小和分辨率下都能保持良好的布局。Qt5提供了几种布局管理器:QVBoxLayout:垂直布局管理器,将控件垂直排列。...一个QPushButton控件,用于提交表单。为了使布局更加美观和自适应,可以选择控件并使用布局管理器(如QVBoxLayout和QHBoxLayout)来组织它们。...3.设置控件属性:选中每个控件,并在右侧的属性编辑器中设置其属性。例如,可以为QLabel设置文本属性,为QLineEdit设置占位符文本属性等。...4.编写代码:在Qt Creator的右侧面板中,双击mainwindow.cpp以打开代码编辑器。在MainWindow类的构造函数中,可以添加信号与槽的连接代码。...5.构建和运行项目:在Qt Creator中,点击左下角的“Build”按钮(或按Ctrl+B)来构建项目。构建成功后,点击左下角的“Run”按钮(或按Ctrl+R)来运行项目。

    30010

    【QT】QT样式表语法

    样式表中一般不区分大小写,如color与COLOR表相同属性,但类名、对象名以及Qt属性名区分大小写。 声明中的多组"属性 : 值"列表以分号;隔开。...如: 鼠标悬停在按钮上时被应用: QPushButton:hover{color:white} 鼠标不悬停在按钮上时被应用(!表否定) QPushButton.!...如: 鼠标悬停在有一个被选中的QCheckBox部件上时才应用规则: QCheckBox:hover:checked{color:white} 3.伪状态可通过逗号达到逻辑或效果。...如: 鼠标悬停或勾选时,应用后面的样式 QCheckBox:hover,checked{color:white} 4.伪状态与子部件联合使用。...如: QComboBox::drop-down:hover{image:url(dropdown_bright.png) 冲突解决 几个样式规则对相同的属性指定不同的值时会产生冲突。

    1.6K31

    PyQt5高级界面控件之QTableWidget(四)

    QTableWidget是QTableView的子类,它使用标准的数据模型,并且其单元数据是通过QTableWidgetItem对象来实现的,使用QTableWidget时就需要QTableWidgetItem...QAbstractItemView.EditKeyPressed8Editing 8 当修改键按下时修改单元格 QAbstractItemView.AnyKeyPressed16Editing 16...,四行三列,所以要灵活运用函数,这里只是示范一下如何单独设置行列 TableWidget=QTableWidget(4,3) # TableWidget = QTableWidget...) 优化3:将表格设置为禁止编辑 在默认情况下,表格中的字符是可以更改的,比如双击一个单元格,就可以修改原来的内容,如果想禁止这种操作,让表格对用户只是只读,则可以编辑一下代码 TableWidget.setEditTriggers...table.setIconSize(QSize(300 ,200)) #设置所有行列宽高数值与图片大小相同 for i in range(3):

    4.1K10

    qt 如何设计好布局和漂亮的界面。

    与布局有关的就是上图红色方块所标注的三项,下面依次做说明。...分割布局器 至于分割布局器,默认情况下是不可用,使用方法是先选中要放入QSplitter中的控件,此时分裂布局图标变亮,然后选择水平或垂直布局器。 ?...使用属性中的handleWidth可调节组件之间的间距。 属性中的opaqueResize默认情况下(打勾),使用鼠标拖动分割子窗口间的边界时,子窗口会动态的改变其大小。...悬停并选中 :hover:checked ?悬停并按下:hover:!...hidden 与 “none” 相同。不过应用于表时除外,对于表,hidden 用于解决边框冲突。 ?dotted 定义点状边框。在大多数浏览器中呈现为实线。 ?dashed 定义虚线。

    10.2K41
    领券