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

做网站外包工作怎么样杭州网络科技网站建设

做网站外包工作怎么样,杭州网络科技网站建设,学生做兼职哪个网站,呼市浩特网站建设外包公司Qt开发中#xff0c;经常重写event函数和具体的事件处理函数#xff0c;例如mousePressEvent、paintEvent等#xff0c;那么这些具体的事件处理函数是怎样被调用的呢#xff1f;答案是由继承自QObject的类中的event函数来处理事件分发。这里以间接继承自QWidget的派生类MyB…Qt开发中经常重写event函数和具体的事件处理函数例如mousePressEvent、paintEvent等那么这些具体的事件处理函数是怎样被调用的呢答案是由继承自QObject的类中的event函数来处理事件分发。这里以间接继承自QWidget的派生类MyButton举例说明。 MyButton.h #ifndef MYBUTTON_H #define MYBUTTON_H#include QPushButtonclass MyButton : public QPushButton {Q_OBJECT public:MyButton(QWidget *parent nullptr);~MyButton();protected:bool event(QEvent *e) override;void mousePressEvent(QMouseEvent *event) override; };#endif // MYBUTTON_HMyButton.cpp #include MyButton.h #include QDebug #include QEvent #include QMouseEvent MyButton::MyButton(QWidget *parent) : QPushButton(parent) {}MyButton::~MyButton() {}bool MyButton::event(QEvent *e) {if (e-type() QEvent::MouseButtonPress){qDebug() __FUNCTION__ e-isAccepted();}return QPushButton::event(e); }void MyButton::mousePressEvent(QMouseEvent *event) {qDebug() __FUNCTION__ event-isAccepted(); }MainWindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H#include QMainWindownamespace Ui { class MainWindow; }class MainWindow : public QMainWindow {Q_OBJECTpublic:explicit MainWindow(QWidget *parent nullptr);~MainWindow();protected:bool event(QEvent *e) override;void mousePressEvent(QMouseEvent *event) override;private:Ui::MainWindow *ui; };#endif // MAINWINDOW_HMainWindow.cpp #include MainWindow.h #include ui_MainWindow.h #include QDebug #include QEvent #include QMouseEventMainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow) {ui-setupUi(this); }MainWindow::~MainWindow() {delete ui; }bool MainWindow::event(QEvent *e) {if (e-type() QEvent::MouseButtonPress){qDebug() __FUNCTION__ e-isAccepted();}return QMainWindow::event(e); }void MainWindow::mousePressEvent(QMouseEvent *event) {qDebug() __FUNCTION__ event-isAccepted(); }运行结果正常 MyButton::event true MyButton::mousePressEvent true// 若如下修改MyButton::mousePressEvent函数 void MyButton::mousePressEvent(QMouseEvent *event) {qDebug() __FUNCTION__ event-isAccepted();event-ignore(); } 那么运行结果为该代码同时验证了上一篇文章所说的事件函数的传播 MyButton::event true MyButton::mousePressEvent true MainWindow::event true MainWindow::mousePressEvent true可以看到QPushButton::event(e)函数里最终调用了具体事件处理函数mousePressEvent该函数是在QWidget类的event函数中进行分发的MyButton-QPushButton-QAbstractButton-QWidget层层调用event函数。 补充QWidget中event函数主要负责事件分发 bool QWidget::event(QEvent *event) {Q_D(QWidget);// ignore mouse and key events when disabledif (!isEnabled()) {switch(event-type()) {case QEvent::TabletPress:case QEvent::TabletRelease:case QEvent::TabletMove:case QEvent::MouseButtonPress:case QEvent::MouseButtonRelease:case QEvent::MouseButtonDblClick:case QEvent::MouseMove:case QEvent::TouchBegin:case QEvent::TouchUpdate:case QEvent::TouchEnd:case QEvent::TouchCancel:case QEvent::ContextMenu:case QEvent::KeyPress:case QEvent::KeyRelease: #if QT_CONFIG(wheelevent)case QEvent::Wheel: #endifreturn false;default:break;}}switch (event-type()) {case QEvent::MouseMove:mouseMoveEvent((QMouseEvent*)event);break;case QEvent::MouseButtonPress:mousePressEvent((QMouseEvent*)event);break;case QEvent::MouseButtonRelease:mouseReleaseEvent((QMouseEvent*)event);break;case QEvent::MouseButtonDblClick:mouseDoubleClickEvent((QMouseEvent*)event);break;...default:return QObject::event(event);}return true; }
http://www.w-s-a.com/news/648262/

相关文章:

  • 福田做棋牌网站建设找哪家效益快弄一个微信小程序多少钱
  • 成都哪家做网站建设比较好做推广赚钱的网站
  • 常州专门做网站的公司有哪些网页模板下载网站10
  • linx服务器怎么做网站做长页网站
  • 汕头网站建设sagevis服装设计公司有什么职位
  • 网站流量分析报告医院网站制作公司
  • 仿58网站怎么做邯郸网站设计多少钱
  • 广州网站制作开发wordpress中文固定连接
  • 成都网站建设公司盈利吗专门做二手手机的网站有哪些
  • 手机网站设计需要学什么wordpress读法
  • WordPress pajx天津短视频seo
  • 检察院门户网站建设情况总结深圳网站制作长沙
  • 单页导航网站模板搜索量查询
  • 如何在一个地方建设网站营销型定制网站
  • 保定网站建设方案维护动易网站中添加邮箱
  • 简易网站的html代码wordpress音乐html
  • 四川住房和城乡建设厅网站打不开海山网站建设
  • 深圳设计功能网站如何用html制作网站
  • 网络优化软件下载竞价排名和seo的区别
  • 龙华新区做网站中高端网站建设
  • 网站开发小图标大全手机网站设计开发
  • 网页设计设计一个网站口碑营销的优点
  • 枣庄建网站的公司唐山企业网络推广培训
  • 张家界建设企业网站学校资源网站建设方案
  • 网站制作教程书籍业务管理系统
  • 上传网站空间的建站程序怎么删除c 网站开发案例详解下载
  • 企业网站维护兼职丹阳网站优化
  • 秦皇岛网站开发公司怎么注册自己的公司
  • 写作网站哪个能得稿费绿色环保企业网站模板
  • 牡丹江网站建设定制开发安徽建设工程信息网官网入口