⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.~h

📁 平台:c++ builder V6.0 功能:利用串口设备通讯,
💻 ~H
字号:
//---------------------------------------------------------------------------

#ifndef mainH
#define mainH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Menus.hpp>
#include <ComCtrls.hpp>
#include <ExtCtrls.hpp>
#include <ToolWin.hpp>
#include <Graphics.hpp>
#include <Buttons.hpp>
#include <IniFiles.hpp>
//---------------------------------------------------------------------------
class TForm_Main : public TForm
{
__published:	// IDE-managed Components
        TPanel *Panel1;
        TPanel *Panel2;
        TShape *Shape_Running;
        TLabel *Label1;
        TPanel *Panel5;
        TLabel *Label4;
        TProgressBar *ProgressBar_Single;
        TLabel *Label_Single;
        TProgressBar *ProgressBar_Air;
        TLabel *Label5;
        TLabel *Label2;
        TProgressBar *ProgressBar_Total;
        TLabel *Label_Total;
        TLabel *Label_Air;
        TProgressBar *ProgressBar_In_Out;
        TLabel *Label_In_Out;
        TLabel *Label6;
        TProgressBar *ProgressBar_Pause;
        TLabel *Label3;
        TLabel *Label_Pause;
        TShape *Shape_1_Stop;
        TLabel *Label7;
        TShape *Shape_1_Running;
        TLabel *Label8;
        TShape *Shape_1_Warning;
        TLabel *Label9;
        TLabel *Label10;
        TShape *Shape4;
        TShape *Shape5;
        TShape *Shape6;
        TLabel *Label11;
        TLabel *Label12;
        TLabel *Label13;
        TLabel *Label14;
        TShape *Shape_2_Stop;
        TShape *Shape_2_Running;
        TShape *Shape_2_Warning;
        TLabel *Label15;
        TLabel *Label16;
        TLabel *Label17;
        TLabel *Label18;
        TLabel *Label19;
        TShape *Shape_3_Stop;
        TShape *Shape_3_Running;
        TLabel *Label20;
        TLabel *Label21;
        TLabel *Label22;
        TShape *Shape_3_Warning;
        TTimer *Timer1;
        TStatusBar *StatusBar1;
        TMainMenu *MainMenu1;
        TMenuItem *F1;
        TMenuItem *O1;
        TMenuItem *S1;
        TMenuItem *N1;
        TMenuItem *P1;
        TMenuItem *N2;
        TMenuItem *X1;
        TMenuItem *S2;
        TMenuItem *L1;
        TMenuItem *N3;
        TMenuItem *A1;
        TMenuItem *H1;
        TMenuItem *H2;
        TMenuItem *A2;
        TLabel *Label_Hint1;
        TLabel *Label_Hint2;
        TLabel *Label_Hint3;
        TMenuItem *Menu_Operate;
        TMenuItem *N10;
        TPanel *Panel3;
        TBitBtn *BitBtn_Set;
        TBitBtn *BitBtn_Reset;
        TBitBtn *BitBtn_Start_All;
        TBitBtn *BitBtn_Start1;
        TBitBtn *BitBtn_Start2;
        TBitBtn *BitBtn_Start3;
        TLabel *Label25;
        TBitBtn *BitBtn_StopAll;
        TBitBtn *BitBtn_Stop1;
        TBitBtn *BitBtn_Stop2;
        TBitBtn *BitBtn_Stop3;
        TLabel *Label26;
        TBitBtn *BitBtn_Report;
        TMenuItem *S3;
        TEdit *Edit_Data_Send;
        TEdit *Edit_Data_Get;
        TLabel *Label28;
        TPanel *Panel7;
        TLabel *Label_User;
        TLabel *Label29;
        TImage *Image1;
        TMenuItem *N5;
        TMenuItem *N6;
        TLabel *Label_Com_Hint;
        TBitBtn *BitBtn_End;
        TLabel *Label23;
        void __fastcall Timer1Timer(TObject *Sender);
        void __fastcall X1Click(TObject *Sender);
        void __fastcall A2Click(TObject *Sender);
        void __fastcall FormCreate(TObject *Sender);
        void __fastcall BitBtn_Stop1Click(TObject *Sender);
        void __fastcall L1Click(TObject *Sender);
        void __fastcall FormCloseQuery(TObject *Sender, bool &CanClose);
        void __fastcall Menu_OperateClick(TObject *Sender);
        void __fastcall A1Click(TObject *Sender);
        void __fastcall BitBtn_SetClick(TObject *Sender);
        void __fastcall BitBtn_ResetClick(TObject *Sender);
        void __fastcall BitBtn_Start_AllClick(TObject *Sender);
        void __fastcall BitBtn_Start1Click(TObject *Sender);
        void __fastcall BitBtn_Start2Click(TObject *Sender);
        void __fastcall BitBtn_Start3Click(TObject *Sender);
        void __fastcall BitBtn_StopAllClick(TObject *Sender);
        void __fastcall BitBtn_Stop2Click(TObject *Sender);
        void __fastcall BitBtn_Stop3Click(TObject *Sender);
        void __fastcall P1Click(TObject *Sender);
        void __fastcall N6Click(TObject *Sender);
        void __fastcall BitBtn_ReportClick(TObject *Sender);
        void __fastcall S3Click(TObject *Sender);
        void __fastcall N10Click(TObject *Sender);
        void __fastcall BitBtn_EndClick(TObject *Sender);
private:	// User declarations
public:		// User declarations
        struct {
                int Total_Times;//总循环次数
                int Spray_Time;//粉尘吹动时间
                int InOut_Time;//卷收器进出次数
                int Break_Time;//间隙时间
                bool Checking;//正在检测
                bool Info_Read;//设备测试信息读取
                bool Info_Send;//发送测试信息
                bool Done;
                bool ERR;
                bool Exit;//退出
                }CHK;
        struct  mystr_COMM{
                int    Comm_No;                   //通讯参数.端口值
                DWORD  Comm_BaudRate;             //通讯参数.波特率
                BYTE   Comm_ByteSize;             //通讯参数.数据位数
                BYTE   Comm_Parity;               //通讯参数.校验位
                BYTE   Comm_StopBits;             //通讯参数.停止位
                bool   Comm_OK;                   //通讯参数.联机状态
                HANDLE hComm;                     //通讯参数.通讯句柄
                bool   Linked;                  //通讯参数.联机
                }COMM; //.通讯参数结构.
        struct FILEREPORT{                      //检测报告文件
                AnsiString Number;              //检测报告文件.报告编号
                AnsiString Code;                //检测报告文件.代号
                AnsiString Name;                //检测报告文件.名称
                AnsiString Technic;             //检测报告文件.技术条件
                AnsiString UserNumber;          //检测报告文件.用户编号
                AnsiString GroupNumber;         //检测报告文件.批次号
                int State;                     //检测报告文件.状态
                int Assem;                     //检测报告文件.装配
                AnsiString Temperature;         //检测报告文件.温度
                AnsiString Laber;               //检测报告文件.试验员
                AnsiString Checker;             //检测报告文件.校对
                AnsiString Leader;              //检测报告文件.负责人
                AnsiString Memo;                //检测报告文件.备注
                bool CHECK_1;
                bool CHECK_2;
                bool CHECK_3;
                bool F1;
                bool F2;
                bool F3;
                bool E1;
                bool E2;
                bool E3;
                struct {int T;int S;}EE1;
                struct {int T;int S;}EE2;
                struct {int T;int S;}EE3;
                }REPORT;
        struct{
              AnsiString Name;
              AnsiString Icon;
              }COMPANY;

        bool Stop_Check;
        AnsiString str_EXEC_PATH;//执行文件路径

        void __fastcall Open_Comm();//打开串口句柄
        void __fastcall Set_Comm();//设置通讯参数
        void __fastcall Init_Comm_Value();//初始化通讯参数
        void __fastcall Link_Device();//联接设备
        bool __fastcall Is_Running(AnsiString RS);//询问是否启动
        int __fastcall TForm_Main::Read_Value(AnsiString RS);//读单字节值

        void __fastcall Close_All_Lamp(void);
        void __fastcall Open_All_Lamp(void);
        void __fastcall Clear_All_Hint(void);//清除所有进度条的分数值
        void __fastcall Reset_All_ProgressBar(void);//重置进度条
        void __fastcall Init_Check_Value(int Total,int Air,int PP,int Rest);//初始化检测初值
        void __fastcall SendString(String Temp);//发送字符串
        String __fastcall CheckString(String OutStr); //自定义字符串校验函数
        String __fastcall ReadString(void);//读字符串
        __fastcall TForm_Main(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm_Main *Form_Main;
//---------------------------------------------------------------------------
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -