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

商丘网站建设价格在xampp下搭建本地网站

商丘网站建设价格,在xampp下搭建本地网站,重庆专业网站推广报价,淘宝买模板注浆做网站一、场景 常常会需要实现点击/hover时修改图片#xff0c;可能是一个QPushButton、QLabel、QToolButton…… 由于Qt bug#xff0c;QIcon/QSS只能实现常规态、按下态的图标切换#xff0c;hover态的图片设置无效。 解决思路无非是安装事件过滤器、自定义类并重实现事件。 …一、场景 常常会需要实现点击/hover时修改图片可能是一个QPushButton、QLabel、QToolButton…… 由于Qt bugQIcon/QSS只能实现常规态、按下态的图标切换hover态的图片设置无效。 解决思路无非是安装事件过滤器、自定义类并重实现事件。 然而总要为这些鸡毛蒜皮的操作“小动干戈”会让人不爽。 这里选择更通用的类模板来简化操作。 二、实现说明 Q_OBJECT不能在类模板中使用导致我们不能在模板类中设置信号。不过也不是刚需上面的场景回调函数足够用了。 如果一定要使用信号那么就要用一个类来代理信号的发送。 比如下面定义了InteractiveSignalSender只用于发送信号。 绑定时信号发送者需要调getSignalSender() 注意只能通过组合的方式。如果通过多继承的方式例如让模板类继承QObject会出现重复继承QObject因为WidgetType也继承自QObjectQObject不支持多重继承会有问题。 如果需要在Qt Deigner中使用需要提升那么可以单独写个头文件来放入模板实例例如 // InteractivePushButton.h #pragma once #include interactiveTemplate.husing InteractivePushButton InteractiveQPushButton;然后添加该头文件选择提升为InteractivePushButton即可。 三、实现 使用例子 ui.btnFeedback-setEnterCallback([] { ui.btnFeedback-setIcon(QIcon(:/img/hover.png)); }); ui.btnFeedback-setLeaveCallback([] { ui.btnFeedback-setIcon(QIcon(:/img/simple.png)); }); ui.btnFeedback-setClickCallback([] { ui.btnFeedback-setIcon(QIcon(:/imgpressed.png)); });connect(ui.btnFeedback-signalSender(), InteractiveSignalSender::signalEnter, this, [] {}); 模板实现如下 InteractiveTemplate.h #pragma once#include QWidgetclass InteractiveSignalSender : public QObject {Q_OBJECT public:explicit InteractiveSignalSender(QObject *parent) : QObject(parent){}Q_SIGNALS:void signalEnter(); Q_SIGNALS:void signalLeave(); };template typename WidgetType class Interactive : public WidgetType { public:explicit Interactive(QWidget *parent nullptr);void setEnterCallback(std::functionvoid() callback);void setLeaveCallback(std::functionvoid() callback);void setClickCallback(std::functionvoid() callback);InteractiveSignalSender *signalSender();protected:void mousePressEvent(QMouseEvent *event) override;void enterEvent(QEvent *event) override;void leaveEvent(QEvent *event) override; private:std::functionvoid() m_enterCallback nullptr;std::functionvoid() m_leaveCallback nullptr;std::functionvoid() m_clickCallback nullptr;InteractiveSignalSender *m_signalSender new InteractiveSignalSender(this);static_assert(std::is_base_ofQWidget, WidgetType::value, WidgetType must be a QWidget); };template typename WidgetType InteractiveWidgetType::Interactive(QWidget *parent) : WidgetType(parent) { }template typename WidgetType InteractiveSignalSender * InteractiveWidgetType::signalSender() {return m_signalSender; }template typename WidgetType void InteractiveWidgetType::setEnterCallback(std::functionvoid() callback) {m_enterCallback callback; }template typename WidgetType void InteractiveWidgetType::setLeaveCallback(std::functionvoid() callback) {m_leaveCallback callback; }template typename WidgetType void InteractiveWidgetType::setClickCallback(std::functionvoid() callback) {m_clickCallback callback; }template typename WidgetType void InteractiveWidgetType::mousePressEvent(QMouseEvent *event) {if (m_clickCallback) {m_clickCallback();}WidgetType::mousePressEvent(event); }template typename WidgetType void InteractiveWidgetType::enterEvent(QEvent *event) {emit m_signalSender-signalEnter();if (m_enterCallback) {m_enterCallback();}WidgetType::enterEvent(event); }template typename WidgetType void InteractiveWidgetType::leaveEvent(QEvent *event) {emit m_signalSender-signalLeave();if (m_leaveCallback) {m_leaveCallback();}WidgetType::leaveEvent(event); }
http://www.dnsts.com.cn/news/196433.html

相关文章:

  • 网站建设产品展示型的php网站开发门槛高吗
  • 高校后勤网站建设网站建设运用的技术
  • 网站 head关键字 密度 多少字北京到广州飞机
  • 智慧旅游门户网站建设方案wordpress投票插件wp-polls
  • 合肥网站建设 合肥网络推广自适应手机网站开发
  • 北京网站建设公司报价广告软文小故事800字
  • 网站 功能建设上 不足seo网站优化策划书
  • 购物网站制作费用加强政务公开网站建设
  • 网站做的很差的案例下载ps软件免费版
  • 临沂网站案例lnmp wordpress tp
  • 郑州网站推广策行业门户网站建站
  • 上海企业建站流程室内设计效果图软件手机版
  • 有批量做基因结构的网站吗优化设计答案
  • 怎么给汽车网站做推广seo关键词推广案例
  • 扁平网站配色产品设计专业就业前景
  • 做微商必会的软件网站辽宁建设工程信息网上不去
  • 东莞做网站怎么样phpcms做视频网站
  • 网站建设与维护难不难服务器主机如何搭建wordpress
  • wordpress网站上传服务器网站建设大赛海报
  • 江西建设网站网上招聘网站开发报告
  • 北京好的做网站公司深圳网站设计九曲
  • 做商城的网站用什么框架好网页制作用什么软件
  • 惠州建网站服务自发购卡网站在吗做
  • 自己电脑上做网站别人访问义乌网站制作电话
  • 网站建设优化服务多少钱wordpress 饭店主题
  • 淘宝app网站建设之江汇学校网站建设
  • 建设银行网站用什么字体网站美化模板
  • 做网站资料广州网站备案公司
  • 西安设计网站的公司长沙seo培训班
  • 济南制作网站公司淘宝网官方网站免费下载