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

翠峦网站建设怎样做影视网站不侵权

翠峦网站建设,怎样做影视网站不侵权,杭州建站软件,百度的广告怎么免费发布目录 1.定时器0.是什么#xff1f;1.QTimerEvent2.QTimer3.获取系统⽇期及时间 2.事件分发器1.概述2.事件分发器工作原理3.使用 3.事件过滤器0.是什么#xff1f;2.使用 1.定时器 0.是什么#xff1f; 在进⾏窗⼝程序的处理过程中#xff0c;经常要周期性的执⾏某些操作1.QTimerEvent2.QTimer3.获取系统⽇期及时间 2.事件分发器1.概述2.事件分发器工作原理3.使用 3.事件过滤器0.是什么2.使用 1.定时器 0.是什么 在进⾏窗⼝程序的处理过程中经常要周期性的执⾏某些操作或者制作⼀些动画效果使⽤定时器就可以实现定时器就是在间隔⼀定时间后去执⾏某⼀个任务Qt中的定时器分为QTimerEvent和QTimer这2个类 1.QTimerEvent QTimerEvent⽤来描述⼀个定时器事件使用 startTimer()开启⼀个定时器 参数以毫秒为单位的整数作为参数来表明设定的时间返回值一个整形的身份标识代表这个定时器 当定时器溢出时(即定时时间到达)就可以在timerEvent()中获取该定时器的编号来进⾏相关操作killTimer关闭定时器 注意如果一个程序中存在多个定时器(startTimer创建的定时器)此时每个定时器都会触发timerEvent()示例// 构造函数中 {// 开启定时器事件.// 此处 timerId 是一个定时器的身份标识.timerId this-startTimer(1000); }void Widget::timerEvent(QTimerEvent* event) {// 先判定一下这次触发是否是想要的定时器触发的.if (event-timerId() ! this-timerId) {return;}int value ui-lcdNumber-intValue();if (value 0) {// 停止定时器this-killTimer(this-timerId);return;}value - 1;ui-lcdNumber-display(value); }2.QTimer QTimer底层是QTimerEventQTimer实现⼀个定时器它提供了更⾼层次的编程接⼝ 如可以使⽤信号和槽还可以设置只运⾏⼀次的定时器 示例QTimer* timer new QTimer(this);connect(ui-btn1, QPushButton::clicked, [](){timer-start(1000); });connect(timer, QTimer::timeout, [](){static int num 1;ui-label-setText(QString::number(num)); });connect(ui-btn2, QPushButton::clicked, [](){timer-stop(); });3.获取系统⽇期及时间 在Qt中获取系统的⽇期及实时时间可以通过QTimer类和QDateTime类 QDateTime类提供了字符串格式的时间输出格式由toString()⽅法中的format参数列表决定 示例 // 构造函数中 {QTimer* timer new QTimer(this);connect(ui-btn1, QPushButton::clicked, [](){timer-start(1000);});connect(ui-btn2, QPushButton::clicked, [](){timer-stop();});connect(timer, QTimer::timeout, this, Widget::TimeUpdate); }void Widget::TimeUpdate() {QString t QDateTime::currentDateTime().toString(yyyy-MM-dd hh:mm:ss);ui-label-setText(t); }2.事件分发器 1.概述 在Qt中事件分发器(EventDispatcher)是⼀个核⼼概念⽤于处理GUI应⽤程序中的事件 属于Qt事件机制背后的一些逻辑杀伤力比较广不当使用可能对现有逻辑造成一些负面影响一般不建议使用 事件分发器负责将事件从⼀个对象传递到另⼀个对象直到事件被处理或被取消每个继承⾃QObject类或QObject类本⾝都可以在本类中重写bool event(QEvent* e)来实现相关事件的捕获和拦截 2.事件分发器工作原理 在Qt中发送的事件都是传给了QObject对象更具体点是传给了QObject对象的event() 所有的事件都会进⼊到这个函数⾥⾯ 那么处理事件就要重写这个event()函数 event()函数本⾝不会去处理事件⽽是根据事件类型(type)调⽤不同的事件处理函数 事件分发器就是⼯作在应⽤程序向下分发事件的过程中 事件分发器⽤于分发事件在此过程中事件分发器也可以做拦截操作事件分发器主要是通过bool event(QEvent* e)来实现 返回值若为ture代表拦截不向下分发 3.使用 Qt中的事件是封装在QEvent类中其所包括的事件类型 示例拦截鼠标左键单击事件 void Widget::mousePressEvent(QMouseEvent* event) {if(event-button() Qt::LeftButton){qDebug() 鼠标左键被按下;} }bool Widget::event(QEvent* ev) {if(ev-type() QEvent::MouseButtonPress){qDebug() Event中鼠标被按下;return true; // 返回true代表拦截不向下分发}// 其他事件交给父类处理(默认处理)return QWidget::event(ev); }3.事件过滤器 0.是什么 在Qt中⼀个对象可能经常要查看或拦截另外⼀个对象的事件 例如对话框想要拦截按键事件不让别的组件接收到或者修改按键的默认值等属于Qt事件机制背后的一些逻辑杀伤力比较广不当使用可能对现有逻辑造成一些负面影响一般不建议使用 Qt创建了QEvent事件对象之后会调⽤QObject的event()函数处理事件的分发可以在event()函数中实现拦截的操作 由于event()是protected的因此需要继承已有类如果组件很多就需要重写很多个event() 这当然相当⿇烦更不⽤说重写event()还得⼩⼼⼀堆问题好在Qt提供了另外⼀种机制来达到这⼀⽬的事件过滤器 事件过滤器是在应⽤程序分发到event事件分发器之前再做⼀次更⾼级的拦截 2.使用 事件过滤器的⼀般使⽤步骤 安装事件过滤器重写事件过滤器函数eventfilter() 示例{void MyLabel::mousePressEvent(QMouseEvent* event){QString str QString(鼠标按下: x %1, y %2).arg(event-x()).arg(event-y());qDebug() str.toUtf8().data();}void MyLabel::event(QEvent* ev){if(ev-type() QEvent::MouseButtonPress){QMouseEvent* event static_castQMouseEvent* e(e);QString str QString(event中鼠标按下: x %1, y %2).arg(event-x()).arg(event-y());qDebug() str.toUtf8().data();return true; // 返回true代表拦截不向下分发}// 其他事件交给父类处理(默认处理)return QWidget::event(ev);} } ---------------------------------------------------------------------- {// Widget构造函数中{// 步骤1给label安装事件过滤器 this:当前窗口安装事件过滤器ui-label-installEventFilter(this);}// 步骤2重写eventFilter事件bool Widget::eventFilter(QObject* obj, QEvent* e){if(obj ui-label) // 判断控件{if(e-type QEvent::MouseButtonPress){QMouseEvent* event static_castQMouseEvent* e(e);QString str QString(事件过滤器中鼠标按下: x %1, y %2).arg(event-x()).arg(event-y());qDebug() str.toUtf8().data();return true;}}// 其他事件交给父类处理return QWidget::event(ev);} }
http://www.hkea.cn/news/14429246/

相关文章:

  • 网站降权怎么办重庆网络推广排行
  • 天猫网站怎么做济南网站建设手机
  • 网站上的图片多大合适推广赚钱的软件有哪些
  • 网站公司做的比较好wordpress搜索400
  • 外贸网站建站赚钱网页制作的视频教程
  • 做网站卖产品要注册公司吗做网站会用到的代码单词
  • 淮北做网站的公司湖口网站建设
  • 慈溪做网站公司哪家好网站网页设计方案
  • apmserv 设置网站目录江门微信网站建设
  • 南宁横县网站建设推广wordpress悬浮联系表
  • 建设厅网站合同备案在哪里企业营销型网站规划
  • 团购网站及域名php网站建设一流程
  • 网站内链 工具关键词排名手机优化软件
  • 课桌公司网站建设wap网站建设学什么
  • 信阳网站建设找汉狮wordpress的分类id
  • 电子商务网站建设的方法有哪些方面做网站需要理解什么
  • 平面设计网站灵感wordpress获取附件
  • 网站的导航栏设计文本网站建设及优化方案
  • 电商是什么?一般是干嘛的seo搜索引擎优化是什么意思
  • 网站绝对布局铜铜铜铜铜铜铜铜好大好深色
  • 怎么查看网站快照微信网站制作系统
  • 惠州企业自助建站深圳有哪些招聘网站
  • 顺德建设网站wordpress匿名评论插件
  • 卓训网是个什么网站南宁经典网站建设
  • 网站建设有哪些推广渠道wordpress主题添加右边栏
  • 如何做二手车网站济南市住建局官网
  • 如何做个购物网站浦口区网站建设技术指导
  • 江苏省建设人才网站长春网站设计长春网络推广
  • 建网站能多少带宽钢材技术支持东莞网站建设
  • 网站建设自学教程搭建网页游戏教程