实验室智能管理系统(2)——Arm+QT部分(一)
2017-03-26 20:02
579 查看
由于QT本身不自带arm的串口函数,用了别人写的串口函数添加到QT工程中。从网上下载qextserialport-1.2win-alpha.zip
将posix_qextserialport.h、qextserialbase.h两个头文件添加到工程
登录界面
图中的按键变色效果:改变样式表 QPushButton { background-color: rgb(0, 170, 255); border-radius: 3px; color: rgb(255, 255, 255); } QPushButton:hover { background-color: rgb(245, 69, 234); }
safegate.h
safegate.cpp
将posix_qextserialport.h、qextserialbase.h两个头文件添加到工程
登录界面
图中的按键变色效果:改变样式表 QPushButton { background-color: rgb(0, 170, 255); border-radius: 3px; color: rgb(255, 255, 255); } QPushButton:hover { background-color: rgb(245, 69, 234); }
safegate.h
#ifndef SAFEGATE_H #define SAFEGATE_H #include <QDialog> #include <QProgressDialog> namespace Ui { class Safegate; } class Safegate : public QDialog { Q_OBJECT public: explicit Safegate(QWidget *parent = 0); ~Safegate(); QString pwd; void delay(); signals: void ask_for_wakeup(); private slots: void on_num1_clicked(); void on_num2_clicked(); void on_num3_clicked(); void on_num4_clicked(); void on_num5_clicked(); void on_num6_clicked(); void on_num7_clicked(); void on_num8_clicked(); void on_num9_clicked(); void on_num0_clicked(); void on_del_clicked(); void on_enter_clicked(); private: Ui::Safegate *ui; }; #endif // SAFEGATE_H
safegate.cpp
#include "safegate.h" #include "ui_safegate.h" Safegate::Safegate(QWidget *parent) : QDialog(parent), ui(new Ui::Safegate) { ui->setupUi(this); this->setMaximumSize(800,500); this->setMinimumSize(800,500); this->setWindowFlags(Qt::FramelessWindowHint); } Safegate::~Safegate() { delete ui; } void Safegate::on_num1_clicked() { pwd.append(tr("1")); ui->lcd->setText(pwd); } void Safegate::on_num2_clicked() { pwd.append(tr("2")); ui->lcd->setText(pwd); } void Safegate::on_num3_clicked() { pwd.append(tr("3")); ui->lcd->setText(pwd); } void Safegate::on_num4_clicked() { pwd.append(tr("4")); ui->lcd->setText(pwd); } void Safegate::on_num5_clicked() { pwd.append(tr("5")); ui->lcd->setText(pwd); } void Safegate::on_num6_clicked() { pwd.append(tr("6")); ui->lcd->setText(pwd); } void Safegate::on_num7_clicked() { pwd.append(tr("7")); ui->lcd->setText(pwd); } void Safegate::on_num8_clicked() { pwd.append(tr("8")); ui->lcd->setText(pwd); } void Safegate::on_num9_clicked() { pwd.append(tr("9")); ui->lcd->setText(pwd); } void Safegate::on_num0_clicked() { pwd.append(tr("0")); ui->lcd->setText(pwd); } void Safegate::on_del_clicked() { pwd.chop(1); ui->lcd->setText(pwd); } void Safegate::on_enter_clicked() { if(pwd == "000000") { QProgressDialog dialog(NULL,NULL, 0, 50, this); dialog.setWindowTitle(tr("")); dialog.setWindowModality(Qt::WindowModal); dialog.setWindowFlags(Qt::FramelessWindowHint);//去掉标题栏 dialog.show(); for(int k = 0; k < 50; k++) { dialog.setValue(k); QCoreApplication::processEvents(); if(dialog.wasCanceled()) { break; } } dialog.setValue(50); pwd.clear(); ui->lcd->setText(pwd); emit ask_for_wakeup(); } else { pwd.clear(); pwd = QString(tr("密码错误")); ui->lcd->setText(pwd); pwd.clear(); } } void Safegate::delay() { QProgressDialog dialog(NULL,NULL, 0, 50, this); dialog.setWindowTitle(tr("")); dialog.setWindowModality(Qt::WindowModal); dialog.setWindowFlags(Qt::FramelessWindowHint);//去掉标题栏 dialog.show(); for(int k = 0; k < 50; k++) { dialog.setValue(k); QCoreApplication::processEvents(); if(dialog.wasCanceled()) { break; } } dialog.setValue(50); }
相关文章推荐
- 实验室智能管理系统(2)——Arm+QT部分(二)
- 实验室智能管理系统(2)——Arm+QT部分(二)
- 实验室智能管理系统(2)——Arm+QT部分(一)
- 实验室智能管理系统(2)——Arm+QT部分(一)
- 实验室智能管理系统(2)——Arm+QT部分(一)
- 实验室智能管理系统(2)——Arm+QT部分(二)
- 实验室智能管理系统(2)——Arm+QT部分(二)
- 实验室智能管理系统(2)——Arm+QT部分(一)
- 实验室智能管理系统(2)——Arm+QT部分(二)
- 实验室智能管理系统(2)——Arm+QT部分(二)
- 实验室智能管理系统(2)——Arm+QT部分(一)
- 实验室智能管理系统(2)——Arm+QT部分(二)
- 实验室智能管理系统(2)——Arm+QT部分(一)
- 实验室智能管理系统(2)——Arm+QT部分(一)
- 实验室智能管理系统(2)——Arm+QT部分(二)
- 实验室智能管理系统(3)——zigbee部分
- 实验室智能管理系统(3)——zigbee部分
- 实验室智能管理系统(3)——zigbee部分
- 实验室智能管理系统(3)——zigbee部分
- 实验室智能管理系统(3)——zigbee部分