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

网站免费获取验证码怎么做广东中山建设信息网站

网站免费获取验证码怎么做,广东中山建设信息网站,网站备案密码忘,免费国外建站一、场景 常常会需要实现点击/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.w-s-a.com/news/61435/

相关文章:

  • 哪个网站做h5好做汽车网站
  • 汝州网站制作住房和城乡建设部官网进行查询
  • 怎么做整人点不完的网站获取网站访客qq号码源码
  • 自建网站软件网站如何减少404跳转
  • 我想学制作网站吗公司起名网站十大排名
  • 广州白云手机网站建设淘宝店铺怎么推广
  • 青海省住房与城乡建设厅网站珠海高端网站制作公司
  • 深圳个性化建网站公司简便网站建设
  • 网站安全狗十大免费ppt网站在线
  • 进网站后台显示空白图片模板 网站源码
  • dedecms 英文网站怎么在网站上做模式题库
  • 轻网站怎么建立国外做评论的网站
  • 拉米拉网站建设乐清网站网站建设
  • 获取网站全站代码申请免费域名的方法
  • 网站制作建设公司哪家好wordpress仪表盘打不开
  • 最佳网站制作模板用手机能创建网站吗
  • 只做黑白摄影的网站网站建设好后给领导作介绍
  • 移动手机网站建设如何做网站地图视频
  • 手工业网站怎么做成都酒吧设计公司
  • .net 网站生成安装文件目录重庆网站建设沛宣网络
  • 怎么做钓鱼网站吗百度免费域名注册网站
  • 如何给网站做外部优化今年国内重大新闻
  • 有没有做生物科技相关的网站弄一个app大概多少钱
  • 五金加工东莞网站建设怎么做网页跳转
  • 淄博网站优化价格wordpress没有小工具
  • 自己搭建服务器做视频网站wordpress发布文章 发布
  • php仿博客园网站阅读分享网站模板
  • 网站宣传的劣势域名注册长沙有限公司
  • 怎样联系自己建设网站企业怎样做好网站建设
  • 网站制作需求分析电商网站建设浩森宇特