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

番禺做网站开发江西省赣州市天气预报

番禺做网站开发,江西省赣州市天气预报,网站后台源码,wordpress图片点击放大一个Qt窗口生成后#xff0c;为什么拖动窗口#xff0c;窗口可以随着鼠标移动或放大缩小 因为对窗口操作后#xff0c;都有对应的事件产生#xff0c;Qt在其框架中对这些事件进行了默认处理 一个Qt程序默认只有一个线程#xff0c;称为主线程#xff08;也叫ui线程#…一个Qt窗口生成后为什么拖动窗口窗口可以随着鼠标移动或放大缩小 因为对窗口操作后都有对应的事件产生Qt在其框架中对这些事件进行了默认处理 一个Qt程序默认只有一个线程称为主线程也叫ui线程主要处理窗口的事件比如鼠标拖动缩放窗口控件对象数据的更新 不能用子线程处理这些事如果子线程要操作窗口只能先将数据传递给主线程由主线程操作 常用函数 分为三个部分公有函数、公有槽函数信号Qt提供的静态成员函数 父对象和父类是两回事父类是继承关系父对象是从属关系 // 构造函数 QThread::QThread(QObject *parent Q_NULLPTR); 指定一个父对象就可以了// 判断线程中的任务是不是处理完毕了 bool QThread::isFinished() const; // 判断子线程是不是在执行任务 bool QThread::isRunning() const;// Qt中的线程可以设置优先级 // 得到当前线程的优先级 Priority QThread::priority() const; void QThread::setPriority(Priority priority); 优先级:QThread::IdlePriority -- 最低的优先级QThread::LowestPriorityQThread::LowPriorityQThread::NormalPriorityQThread::HighPriorityQThread::HighestPriorityQThread::TimeCriticalPriority -- 最高的优先级QThread::InheritPriority -- 子线程和其父线程的优先级相同, 默认是这个// 退出线程, 停止底层的事件循环 // 退出线程的工作函数 void QThread::exit(int returnCode 0); // 调用线程退出函数之后, 线程不会马上退出因为当前任务有可能还没有完成, 调回用这个函数是 // 调用wait后会等待任务执行, 执行完退出线程, 一般情况下会在 exit() 后边调用这个函数 bool QThread::wait(unsigned long time ULONG_MAX); 槽 // 和调用 exit() 效果是一样的 // 调用这个函数之后, 再调用 wait() 函数 [slot] void QThread::quit();// 启动子线程 [slot] void QThread::start(Priority priority InheritPriority);// 线程退出, 可能是会马上终止线程, 一般情况下不使用这个函数 [slot] void QThread::terminate();信号 // 线程中完成后, 会发出该信号 [signal] void QThread::finished();// 发出该信号后表示线程开始工作启动线程后没必要捕捉该信号 [signal] void QThread::started();主线程和子线程间通过信号和槽进行数据传递 静态函数 // 返回一个指向管理当前执行线程的QThread的指针 [static] QThread *QThread::currentThread();// 返回可以在系统上运行的理想线程数 和当前电脑的 CPU 核心数相同 [static] int QThread::idealThreadCount();// 线程休眠函数 [static] void QThread::msleep(unsigned long msecs); // 单位: 毫秒 [static] void QThread::sleep(unsigned long secs); // 单位: 秒 [static] void QThread::usleep(unsigned long usecs); // 单位: 微秒 任务处理函数 // 子线程要处理什么任务, 需要写到 run() 中 [virtual protected] void QThread::run();该函数没有参数和返回值是一个受保护的虚函数如果让子线程处理某些任务需要将任务写到run内部调用start函数就能执行线程内部的run函数 受保护说明该函数不能在类外使用需要通过调用start槽函数使run函数运行执行任务 使用方式 方式1 创建线程类该类继承QThread类在线程的子类中重写run函数在主线程类中new一个子线程的类对象让该子线程对象调用start函数 子类头文件 #include QThread class MyThread : public QThread {Q_OBJECT public:explicit MyThread(QObject *parent nullptr);protected:void run();signals:// 自定义信号, 传递数据void curNumber(int num);public slots: };子类源文件 #include mythread.h #include QDebug MyThread::MyThread(QObject *parent) : QThread(parent) {}void MyThread::run() {qDebug() 当前线程对象的地址: QThread::currentThread();int num 0;while(1){emit curNumber(num);if(num 10000000){break;}QThread::usleep(1);}qDebug() run() 执行完毕, 子线程退出...; }#include mainwindow.h #include ui_mainwindow.h #include mythread.h #include QDebugMainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow) {ui-setupUi(this);qDebug() 主线程对象地址: QThread::currentThread();// 创建子线程MyThread* subThread new MyThread;connect(subThread, MyThread::curNumber, this, [](int num){ui-label-setNum(num);});connect(ui-startBtn, QPushButton::clicked, this, [](){// 启动子线程subThread-start();}); }MainWindow::~MainWindow() {delete ui; }
http://www.tj-hxxt.cn/news/133435.html

相关文章:

  • 网站图片上传不上去是什么情况中小学校园网站建设
  • wordpress屏蔽登陆按钮长沙专业网站优化定制
  • 知名开发网站公司简介wordpress 下一篇
  • 怎样做阿里巴巴网站的店招网站访问工具
  • eclipse tomcat 网站开发网站开发学生鉴定表
  • 西宁市城乡规划建设局网站公司注册要求
  • wordpress做分类信息网站考试源码网站wordpress
  • 海洋公园网站建设方案有人用wordpress做企业
  • 网站建设方案书ppt泸州网站公司
  • 中文网页模板大全青岛网站seo分析
  • 广州企业网站制作公司品牌网站建设有哪些方面
  • 为什么做的网站预览出来什么都没有网站建设办公软件销售技巧
  • odoo 12 网站开发怎么做网页html
  • 有哪些可以做调查的网站濮阳做网站推广的公司
  • 徐州建站互联网营销模式
  • 潍坊网站建设SEO优化做流量任务的试用网站
  • 采购网站大全app设计欣赏网站
  • 如何百度搜索到自己的网站网站被黑了
  • 全国新农村建设中心网站怎样做同城配送网站
  • 网站备案完成后品牌设计logo
  • 平面设计专用网站网站建设 选择题
  • 可以做砍价活动的网站如何用源代码提取网页的图片
  • 网站图片展示代码最新新闻事件摘抄
  • 空间网站wordpress底部漂浮
  • 大连开发区做网站投广告的平台有哪些
  • 电子商务网站建设训练总结seo搜索优化服务
  • 信息科技公司网站怎么做做网站开发公司
  • 河南省住房与城乡建设部网站电子商务企业网站的推广方式
  • 网站开发开票内容专业网站制作公司地址
  • 网站的建设费计入什么科目中职网页设计与制作教材