qt_初学(一)_基于QTimer之计数器设计
来源:互联网 发布:照片文字软件下载 编辑:程序博客网 时间:2024/05/16 04:39
心静不下来的时候,就想给自己找点事情做,如此就学习新的知识,qt的学习已经有几天了,想把这几天学习的东西记写在这里,以用来以后查阅方便,顺便记录自己的学习历程.今天看到这个关于计数器的小练习,朋友说我这么low的东西还往上写啊,好丢人啊,我觉得没什么,凡是都是需要一定的过程的,对于初学QT的我来说,第一次将程序转化为界面化的过程还是让我感到十分高兴的,代码毕竟是时分枯燥和冷漠的,虽然很喜欢敲写代码的节奏感,但对于能够将繁琐的代码语言转化为任何人都可以看到和使用的界面又何尝不让人快乐呢.直接上题:
根据题目的要求呢,首先选择MainWindow创建一个countor.pro工程,在.ui文件上添加3个pushbutton,LCD number如图所示:
具体代码如下:
main.cpp
#include "mainwindow.h"#include <QApplication>int main(int argc, char *argv[]){ QApplication a(argc, argv); MainWindow w; w.show(); return a.exec();}
mainwindow.h
#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>#include<QTimer>namespace Ui {class MainWindow;}class MainWindow : public QMainWindow{ Q_OBJECTpublic: explicit MainWindow(QWidget *parent = 0); ~MainWindow(); void xianshi();private slots: void on_pushButton_clicked(); void on_pushButton_3_clicked(); void on_pushButton_2_clicked(); void on_action_triggered();private: Ui::MainWindow *ui; int num; int miao; QTimer* t; QTimer* t1; int flag; int flag1;public slots: void counter(); void counter_miao();};#endif // MAINWINDOW_H
mainwindow.cpp
#include "mainwindow.h"#include "ui_mainwindow.h"#include"guanyu.h"MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); t= new QTimer; t1= new QTimer; connect(t,SIGNAL(timeout()),this,SLOT(counter())); connect(t1,SIGNAL(timeout()),this,SLOT(counter_miao())); num=0; miao=0; flag=0; flag1=0;}MainWindow::~MainWindow(){ delete ui;}void MainWindow::counter(){ num++; if(flag==1)return; xianshi();}void MainWindow::counter_miao(){ miao++; QString temp = QString::number(miao,10); ui->lineEdit->setText(temp);}void MainWindow::on_pushButton_clicked(){ t->start(1000);flag=0;flag1=0; t1->start(100);}void MainWindow::on_pushButton_3_clicked(){ flag1++; if(flag1==1)t->stop(); else { num=0;xianshi();flag1=0; }}void MainWindow::on_pushButton_2_clicked(){ flag++; if(flag==2)flag=0; xianshi();}void MainWindow::xianshi(){ QString temp = QString::number(num,10); ui->lcdNumber->display(temp);}void MainWindow::on_action_triggered(){ guanyu e; e.exec();}
guanyu.h
#ifndef GUANYU_H#define GUANYU_H#include <QDialog>namespace Ui {class guanyu;}class guanyu : public QDialog{ Q_OBJECTpublic: explicit guanyu(QWidget *parent = 0); ~guanyu();private: Ui::guanyu *ui;};#endif // GUANYU_H
guanyu.cpp
#include "guanyu.h"#include "ui_guanyu.h"guanyu::guanyu(QWidget *parent) : QDialog(parent), ui(new Ui::guanyu){ ui->setupUi(this);}guanyu::~guanyu(){ delete ui;}
当我们按下开始之后会开始计时
好吧,总结以下,确实好low的感觉,可能别人只需要十分钟不到就搞定的小程序,我要调试好久,查帮助文档,查看类成员使用,总算实现了基本功能,写程序会让人思维活跃,写东西会让人安静下来,我希望会一直保持这个习惯,不管是间的程序或者复杂的项目,一周让自己静下来那么几次,就当写写日记,记录下自己这种状态,每一次都在进步!加油!
<所思即所得-努力努力再努力>
0 0
- qt_初学(一)_基于QTimer之计数器设计
- PHP初学之防水计数器
- java设计模式之浅见(一)-----初学javame
- 定时器之QTimer
- Qt之QTimer
- Qt之QTimer
- Qt之QTimer
- 初学c++引用计数器
- 二、FPGA之模71计数器设计
- 计数器设计
- QTimer
- QTimer
- QTimer
- QTimer
- QTimer
- 数据库设计_(一)
- 基于Verilog HDL的模60BCD码计数器设计
- QT开发之QTimer定时器
- 圆角的ImageView
- Android环信EaseUI的快速集成
- lua中处理xml文件
- Mcafee
- QQ的历史渊源
- qt_初学(一)_基于QTimer之计数器设计
- AutoLayout 代码布局
- 2016-09-08开始我的博客之旅
- was not declared in this scop
- AsyncTask 工作原理(下)
- 【mysql】mysql有哪些权限
- (二)Jetson TK1安装CUDA6.5
- getParameter() getInputStream()和getReader() 区别
- web支付原语和脚本