当前位置:主页 > 查看内容

案例分享:Qt便携式致病菌快速检测仪(账号管理、实验过程、二维

发布时间:2021-06-09 00:00| 位朋友查看

简介:若该文为原创文章转载请注明原文出处 本文章博客地址 https://blog.csdn.net/qq21497936/article/details/115574041 长期持续带来更多项目与技术分享咨询请加QQ:21497936、微信yangsir198808 红胖子(红模仿)的博文大全开发技术集合包含Qt实用技术、树莓派、……

若该文为原创文章,转载请注明原文出处
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/115574041

长期持续带来更多项目与技术分享,咨询请加QQ:21497936、微信:yangsir198808

红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…(点击传送门)

合作案例专栏:案例分享(体验Demo可下载,只定制)


需求

??根据提供的用户原型设计、ui设计、通讯协议研发便携式致病菌快速检测仪器软件。
??100%还原ui。


基本主功能(推荐visio:★★★☆☆,前期主流程需求整理)

??在这里插入图片描述
??在这里插入图片描述



Demo v1.8.0

??在这里插入图片描述
??在这里插入图片描述
??在这里插入图片描述
??在这里插入图片描述
??在这里插入图片描述
??在这里插入图片描述


蓝湖Ui原型(推荐蓝湖:★★★★★,产品经理需求-ui设计界面-研发角色间的“零沟通成本”工具,拥有PS插件具备一键上传功能)

??在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


头文件源码

HeSuanCheckWidget.h

#ifndef HESUANCHECKWIDGET_H
#define HESUANCHECKWIDGET_H

#include <QWidget>
#include <QThread>
#include <QDebug>
#include <QTimer>
#include <QButtonGroup>
#include <QMenu>

#include "SerialPortManager.h"
#include "ConfigWidget.h"
#include "HistoryWidget.h"
#include "QuickStartWidget.h"
#include "TestProtocalWidget.h"
#include "UserManagerWidget.h"
#include "LoginWidget.h"
#include "DatabaseManager.h"
#include "RunWidget.h"
#include "TemplateManager.h"
#include "AdvanceWidget.h"
#include "UserAdvanceManagerWidget.h"
#include "ReportWidget.h"
#include "AboutDialog.h"

#define     LOG     qDebug()<<__FILE__<<__LINE__

namespace Ui {
class HeSuanCheckWidget;
}

class HeSuanCheckWidget : public QWidget
{
    Q_OBJECT

public:
    explicit HeSuanCheckWidget(QWidget *parent = 0);
    ~HeSuanCheckWidget();

    UserInfo getUserInfo() const;

    ExpriInfo getExpriInfo() const;
    void setExpriInfo(const ExpriInfo &expriInfo);

protected slots:
    void slot_recvFromSerialPort(QByteArray byteArray); //  接收串口数据
    void slot_updateUserInfo();

protected:
    void loadCfg();
    void saveCfg();
    void showLogined(bool login);             // 切换登录界面(主要是header需要调整)

protected slots:        // 界面切换信号
    void slot_login(UserInfo userInfo);
    void slot_switchToLoginWidget();
    void slot_switchToQuickWidget();
    void slot_switchToHistoryWidget();
    void slot_switchToConfigWidget();
    void slot_switchToTestProtocalWidget();
    void slot_switchToTemplateManager();
    void slot_switchToUserManagerWidget();
    void slot_switchToRunWidget();
    void slot_switchToAdvaneWidget();
    void slot_switchToUserAdvanceManagerWidget();
    void slot_switchToReportWidget(ExpriInfo expriInfo);
    void slot_showFullScreenRunWidget();  // 全屏显示
    void slot_showNormalRunWidget();  // 非全屏显示

protected slots:
    void slot_menuTriggered(QAction *pAction);

protected:
    void mousePressEvent(QMouseEvent *event);
    void mouseMoveEvent(QMouseEvent *event);
    void mouseReleaseEvent(QMouseEvent *event);

private slots:
    void on_pushButton_close_clicked();
    void on_pushButton_min_clicked();
    void on_pushButton_menu_clicked();
    void on_pushButton_menu2_clicked();
    void on_pushButton_min2_clicked();
    void on_pushButton_close2_clicked();

private:
    Ui::HeSuanCheckWidget *ui;
    QButtonGroup *_pButtonGroup;

    QThread *_pSerialPortManagerThread;
    SerialPortManager *_pSerialPortManager;

    QuickStartWidget *_pQuickStartWidget;
    HistoryWidget *_pHistoryWidget;
    ConfigWidget *_pConfigWidget;
    TestProtocalWidget *_pTestProtocalWidget;
    UserManagerWidget *_pUserManagerWidget;
    LoginWidget *_pLoginWidget;
    RunWidget *_pRunWidget;
    TemplateManager *_pTemplateManager;
    AdvanceWidget *_pAdvanceWidget;
    UserAdvanceManagerWidget *_pUserAdvanceManagerWidget;
    ReportWidget *_pReportWidget;

    QMenu *_pMenu;
    QMenu *_pMenu2;
    QAction *_pActionPrint;
    QAction *_pActionLanguage;
    QAction *_pActionConfig;
    QAction *_pActionUpgrade;
    QAction *_pActionAbout;
    QAction *_pActionAbout2;
    QAction *_pActionLogout;
    QAction *_pActionModifyPassword;

    QPoint _beginPoint;
    QPoint _leftTopPoint;
    bool _leftButtonPressed;

    UserInfo _userInfo;             // 当前登录的用户信息
    ExpriInfo _expriInfo;           // 当前实验的实验信息(当实验名称为空,则表示当前没有实验)

    QString _cfgFile;
};

#endif // HESUANCHECKWIDGET_H

若该文为原创文章,转载请注明原文出处
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/115574041

;原文链接:https://blog.csdn.net/qq21497936/article/details/115574041
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!

推荐图文


随机推荐