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

交互网站设计涟源市建设局网站

交互网站设计,涟源市建设局网站,dede装修网站模板,河西集团网站建设需求 最近有一个需求就是一个QTabWidget要求有四个tab页在左侧用于显示主页面#xff0c;在右侧有一个关于按钮#xff0c;点击后用于弹出窗口显示一些程序相关信息。主要是怎么实现右侧按钮 相关代码 #ifndef MYTABWIDGET_H #define MYTABWIDGET_H#include QWidget在右侧有一个关于按钮点击后用于弹出窗口显示一些程序相关信息。主要是怎么实现右侧按钮 相关代码 #ifndef MYTABWIDGET_H #define MYTABWIDGET_H#include QWidget #include QTabWidget #include QPaintEvent #include QStyleOptionButton #include QPushButton #include QRect #include QPainter #include QStyle #include QMouseEventclass MyTabWidget : public QTabWidget {Q_OBJECT public:explicit MyTabWidget(QWidget *parent nullptr);~MyTabWidget(); signals:void clickHelp(); protected://重绘void paintEvent(QPaintEvent *event);//hover状态控制void mouseMoveEvent(QMouseEvent *event);//hover状态控制void leaveEvent(QEvent *event);//点击状态控制void mousePressEvent(QMouseEvent *event);//点击状态控制void mouseReleaseEvent(QMouseEvent *event); private:QPushButton *m_pushButton nullptr;//用于辅助绘制按钮将会使用此按钮的样式表QStyleOptionButton m_optionButton;//绘制按钮用于控制按钮状态按钮位置等bool m_isPressed false;//按下标志位bool m_isReleased false;//松开标志位 };#endif // MYTABWIDGET_H #include MyTabWidget.h #include QDebugMyTabWidget::MyTabWidget(QWidget *parent) : QTabWidget(parent) {setAttribute(Qt::WA_StyledBackground);setMouseTracking(true);//不要给按钮指定父亲指定父亲后此按钮会默认显示在父对象上。在析构函数中将它给delete掉防止内存泄漏m_pushButton new QPushButton;m_optionButton.text QStringLiteral(帮助);m_optionButton.state | QStyle::State_Enabled;//使用样式表来控制按钮的外观更加方便m_pushButton-setStyleSheet(QPushButton{border:1px solid #adadad;background-color:#e1e1e1} QPushButton:hover{border:1px solid #0078d7;background-color:#e5f1fb}QPushButton::pressed{border:1px solid #00559b; background-color:#cde4f7}); }MyTabWidget::~MyTabWidget() {delete m_pushButton;m_pushButton nullptr; }void MyTabWidget::paintEvent(QPaintEvent *event) {QTabWidget::paintEvent(event);QPainter painter(this);m_optionButton.rect QRect(event-rect().topRight().x() - 41, event-rect().topRight().y() 2, 40, 17);//m_pushButton-style()使用按钮的style()接口来绘制是非常重要的m_pushButton-style()-drawControl(QStyle::CE_PushButton, m_optionButton, painter, m_pushButton); }void MyTabWidget::mouseMoveEvent(QMouseEvent *event) {QTabWidget::mouseMoveEvent(event);QRect rect QRect(this-rect().topRight().x() - 41, this-rect().topRight().y() 2, 40, 17);if(rect.contains(event-pos())){m_optionButton.state | QStyle::State_MouseOver;this-repaint();}else{m_optionButton.state ~QStyle::State_MouseOver;this-repaint();} }void MyTabWidget::leaveEvent(QEvent *event) {QTabWidget::leaveEvent(event);m_optionButton.state ~QStyle::State_MouseOver;this-repaint(); }void MyTabWidget::mousePressEvent(QMouseEvent *event) {QTabWidget::mousePressEvent(event);QRect rect QRect(this-rect().topRight().x() - 41, this-rect().topRight().y() 2, 40, 17);if(rect.contains(event-pos())){//QStyle::State_Sunken 也就是按钮按下的状态m_optionButton.state | QStyle::State_Sunken;this-repaint();m_isPressed true;} }void MyTabWidget::mouseReleaseEvent(QMouseEvent *event) {QTabWidget::mouseReleaseEvent(event);QRect rect QRect(this-rect().topRight().x() - 41, this-rect().topRight().y() 2, 40, 17);if(rect.contains(event-pos()) m_isPressed){m_isReleased true;emit clickHelp();m_isPressed false;m_isReleased false;m_optionButton.state ~QStyle::State_Sunken;this-repaint();}else{m_isPressed false;m_optionButton.state ~QStyle::State_Sunken;this-repaint();} } 效果展示
http://www.zqtcl.cn/news/624375/

相关文章:

  • 柳州企业网站开发公司如何做网站首页图
  • 刷赞网站空间免费深圳网站制作公司排名
  • 网站内部优化策略获取网站的路径
  • 网站群 优点今天西安最新通告
  • 惠济免费网站建设设计制作的广告公司
  • 做一个网站建设装潢设计属于什么专业
  • 水处理网站源码注册销售公司流程和费用
  • 诸城网站建设0536s整站优化seo排名点击
  • 企业建设网站需注意哪些内容苏州网站怎么做
  • 浏览器打开网站网站推广软件工具
  • 网站主题编辑工具WordPress公司网站策划方案
  • 做旅游网站选什么空间搜索引擎优化策略有哪些
  • 网站备案多少钱安全网站建设与服务的关系
  • 手机端网页设计尺寸规范优化seo排名
  • 做网站业务提成多少厦门十大装修公司排名榜
  • 为什么用开源建站wordpress rss 插件
  • 语文建设投稿网站南昌做网站的公司多不多
  • 石家庄网站建设的公司功能性质网站
  • 企业网站主页模板装饰公司名字起名大全
  • 马鞍山网站设计价格如何在微信公众号内部做网站
  • 申请网站建设经费的报告生态建设网站
  • 建网站要多少钱用自己的服务器河北工程大学网站开发成本
  • 宁波网站建站公司商务网站模块设计时前台基础设施建设不包括
  • 徐州免费网站制作怎么用阿里云服务器搭建wordpress
  • php猎奇源码 织梦新闻视频图片八卦娱乐趣事资讯门户网站模板html代码表格
  • 南通做网站优化哪家好网页策划书 网站建设定位
  • 防止访问网站文件夹绵阳 网站设计
  • 网页与网站的区别是什么东莞网站公司排名
  • 盐城市城乡和住房建设厅网站wordpress文章订阅
  • 济南网站优化wordpress文件上传到那个文件