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

做网站要不要营业执照想要网站推广页

做网站要不要营业执照,想要网站推广页,创建软件的步骤,阿德莱德做网站文章目录 1 定时器事件1.1 界面布局1.2 关联信号槽1.3 重写timerEvent1.4 实现槽函数 启动定时器 2 定时器类 项目完整的源代码 QT中使用定时器,有两种方式: 定时器类:QTimer定时器事件:QEvent::Timer,对应的子类是QTi…

文章目录

  • 1 定时器事件
    • 1.1 界面布局
    • 1.2 关联信号槽
    • 1.3 重写timerEvent
    • 1.4 实现槽函数 启动定时器
  • 2 定时器类

在这里插入图片描述

项目完整的源代码

QT中使用定时器,有两种方式:

  • 定时器类:QTimer
  • 定时器事件:QEvent::Timer,对应的子类是QTimerEvent

1 定时器事件

1.1 界面布局

把两个标签以及“启动”、“停止"、“复位”三个按钮布局在界面上。

首先,来到timer_widget.h,声明两个标签:

// timer_widget.h
private:QLabel *lbl1;QLabel *lbl2;

timer_widget.cpp 中 实现布局

// timer_widget.cppTimerWidget::TimerWidget(QWidget* parent) : QWidget{parent} {QVBoxLayout* verticalLayout = new QVBoxLayout(this);verticalLayout->setSpacing(0);verticalLayout->setContentsMargins(0, 0, 0, 0);// 第一个标签控件lbl1 = new QLabel(this);lbl1->setFrameShape(QFrame::Box);lbl1->setFixedSize(100, 100);lbl1->setStyleSheet("background-color: red;");verticalLayout->addWidget(lbl1);// 第二个标签控件lbl2 = new QLabel(this);lbl2->setFrameShape(QFrame::Box);lbl2->setFixedSize(100, 100);lbl2->setStyleSheet("background-color: blue;");verticalLayout->addWidget(lbl2);// 添加水平布局 - 三个按钮QHBoxLayout* horizontalLayout = new QHBoxLayout(this);horizontalLayout->setSpacing(0);horizontalLayout->setContentsMargins(0, 0, 0, 0);verticalLayout->addLayout(horizontalLayout);QPushButton* btnStart = new QPushButton(this);QPushButton* btnStop = new QPushButton(this);QPushButton* btnReset = new QPushButton(this);btnStart->setText("开始");btnStop->setText("停止");btnReset->setText("复位");horizontalLayout->addWidget(btnStart);horizontalLayout->addWidget(btnStop);horizontalLayout->addWidget(btnReset);this->setStyleSheet(R"(QPushButton {font-Size: 22px;})");connect(btnStart, &QPushButton::clicked, this,&TimerWidget::onStartClicked);connect(btnStop, &QPushButton::clicked, this, &TimerWidget::onStopClicked);connect(btnReset, &QPushButton::clicked, this,&TimerWidget::onResetClicked);
}

1.2 关联信号槽

关联按钮与槽函数

// 点击按钮触发开启定时器函数
connect(btnStart, &QPushButton::clicked, this,&TimerWidget::onStartClicked);
// 点击按钮触发关闭定时器函数connect(btnStop, &QPushButton::clicked, this, &TimerWidget::onStopClicked);
// 点击按钮触发标签复位connect(btnReset, &QPushButton::clicked, this,&TimerWidget::onResetClicked);

1.3 重写timerEvent

timer_widget.cpp 文件中重写timerEvent函数

// timer_widget.cppvoid TimerWidget::timerEvent(QTimerEvent* event) {// id1 的时间为 10ms 时间到了 做这件事if (event->timerId() == id1) {lbl1->move(lbl1->x() + 5, lbl1->y());if (lbl1->x() > this->width()) {lbl1->move(0, lbl1->y());}// id2 的时间为 20ms 时间到了 做这件事} else if (event->timerId() == id2) {lbl2->move(lbl2->x() + 5, lbl2->y());if (lbl2->x() > this->width()) {lbl2->move(0, lbl2->y());}}
}

1.4 实现槽函数 启动定时器

timer_widget.cpp

void TimerWidget::onStartClicked() {// 启动定时器 - timerEvent// 时间到了自动执行timerEvent函数id1 = startTimer(10);  // 10msid2 = startTimer(20);
}void TimerWidget::onStopClicked() {killTimer(id1);killTimer(id2);
}void TimerWidget::onResetClicked() {lbl1->move(0, lbl1->y());lbl2->move(0, lbl2->y());
}

2 定时器类

接下来,使用定时器类QTimer来实现以上同样的效果

首先,在timer_widget.h声明两个定时器类的对象,以及定时超时的槽函数:

// timer_widget.h
private slots:void onTimerout1();void onTimerout2();private:QTimer *timer1;QTimer *timer2;

然后,在timer_widget.cpp中实现两个定时超时槽函数:

// timer_widget.cpp
void TimerWidget::onTimerout1() {lbl1->move(lbl1->x() + 5, lbl1->y());if (lbl1->x() > this->width()) {lbl1->move(0, lbl1->y());}
}void TimerWidget::onTimerout2() {lbl2->move(lbl2->x() + 5, lbl2->y());if (lbl2->x() > this->width()) {lbl2->move(0, lbl2->y());}
}

关联结束时间信号触发槽

// timer_widget.cpptimer1 = new QTimer(this);timer2 = new QTimer(this);connect(timer1, &QTimer::timeout, this, &TimerWidget::onTimerout1);connect(timer2, &QTimer::timeout, this, &TimerWidget::onTimerout2);

实现槽函数 启动定时器

void TimerWidget::onStartClicked() {timer1->start(10);timer2->start(20);
}void TimerWidget::onStopClicked() {timer1->stop();timer2->stop();
}
http://www.shuangfujiaoyu.com/news/43149.html

相关文章:

  • 辽宁建设工程信息网新平台seo常见的优化技术
  • 鹰潭网站商城建设百度网站推广排名
  • 简易动态网站开发seo高级优化技巧
  • 南昌网站排名网络推广是什么工作
  • 广州外贸网站公司百度高级搜索引擎入口
  • 做分色找工作网站百度引擎搜索引擎
  • 做网站要多少钱百度客服24小时人工服务
  • 旅游网站域名应该如何设计信息流推广
  • 许昌中国建设银行官网站班级优化大师app下载学生版
  • 欧美品牌网站设计网站收录有什么用
  • 网站宣传海报图片微信小程序官网
  • 十堰英文网站建设佛山做网站的公司哪家好
  • 模板网站如何做优化信息如何优化上百度首页公司
  • 做网站的顶部图片线上推广策略
  • 中天建设中瑞物资网站接单平台app
  • 广州网站优化推广企业如何进行品牌推广
  • 做外贸主要在那些网站找单白帽seo公司
  • 平东网站建设快点tv下载安装
  • 做电影网站如何推广最新推广方法
  • 网站设计登录界面怎么做高端网站制作
  • 怎么百度上搜到自己的网站抚州网络推广
  • 自己搭建网站服务器太原今日新闻最新头条
  • 赣州哪里做网站优化设计答案大全
  • 用网站源码做网站营销网站建设哪家快
  • 某企业网站建设论文如何刷seo关键词排名
  • 深圳做外贸网站seo怎么优化关键词排名
  • 组培实验室建设网站流量大的推广平台有哪些
  • mvc5 网站开发之學 pdf百度网盘登录入口官网
  • mac可以做网站开发吗seo建站教学
  • 网站更换域名多少钱优化关键词排名的工具