当前位置: 首页 > news >正文

QpushButton绘制圆角矩形并绘制背景颜色

        要在QPushButton的paintEvent中绘制按钮的颜色,可以创建一个自定义的QPushButton类,并重写它的paintEvent函数。在paintEvent函数中,可以使用QPainter来绘制按钮的背景颜色。

以下是一个简单的示例代码,演示如何在自定义的QPushButton类中绘制按钮的颜色:

#include <QApplication>
#include <QPushButton>
#include <QPainter>class CustomButton : public QPushButton {
public:CustomButton(QWidget *parent = nullptr) : QPushButton(parent) {}protected:void paintEvent(QPaintEvent *event) override {QPushButton::paintEvent(event);QPainter painter(this);painter.setRenderHint(QPainter::Antialiasing); // 抗锯齿painter.setBrush(QColor("#ff0000")); // 设置按钮的背景颜色painter.drawRect(rect()); // 绘制按钮的背景// 在按钮上手动绘制文本,颜色为按钮文本颜色painter.setPen(palette().color(QPalette::ButtonText));painter.drawText(rect(), Qt::AlignCenter, text());}
};int main(int argc, char *argv[]) {QApplication app(argc, argv);CustomButton button("Custom Button");button.resize(200, 50);button.show();return app.exec();
}

        在这个示例中,我们创建了一个名为CustomButton的自定义QPushButton类,并重写了它的paintEvent函数。在paintEvent函数中,我们使用QPainter来绘制按钮的背景颜色。在示例中,我们将按钮的背景颜色设置为红色。

你可以根据需要自定义paintEvent函数以实现你想要的按钮样式和外观。

http://www.lryc.cn/news/344523.html

相关文章:

  • Core Impact 21.5 (Windows) - 高级渗透测试
  • 【Web前端】定位_浮动_音视频
  • 【Osek网络管理测试】[TG4_TC3]LimpHome状态下的睡眠中断
  • 【QT教程】QT6硬件数据库编程 QT硬件数据库
  • unaipp推荐算法的汽车租赁系统zaxzu 微信小程序hbuiderx
  • STM32单片机中C语言的一些隐藏bug
  • 车载测试到底怎么样?真实揭秘!
  • RustGUI学习(iced)之小部件(八):如何使用svg部件显示矢量图形?
  • gitlab设置保护分支
  • 五月加仓比特币
  • 为什么需要归档和管理合同
  • 什么是DMA? STM32如何配置DMA?
  • 交友软件源码-源码+搭建+售后,上线即可运营聊天交友源码 专业语聊交友app开发+源码搭建-快速上线
  • c++多线程2小时速成
  • 大模型日报2024-05-09
  • QGraphicsView实现简易地图11『指定层级-定位坐标』
  • UE5 蓝图入门
  • 英语单词学习
  • 使用Python编写自动化测试代码规范整理
  • 实验七 SJK数据库定义与操纵
  • Win10环境下yolov8快速配置与测试-详细
  • C++面向对象学习笔记一
  • C++容器之vector类
  • 什么是MVCC?
  • 数据结构队列学习
  • Javaweb第五次作业
  • BetterMouse for Mac激活版:鼠标增强软件
  • 红米1s 刷入魔趣 (Mokee)ROM(Android 7.1)
  • MySQL中的事务隔离级别
  • 多线程应用实战