📄 comport1.pas
字号:
//########################################################
//
// & RS232通信端口COM1的通信设置
// Create: Lireo
// Jan-23-06
//
//########################################################
unit ComPort1;
interface
uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls,
Buttons, ExtCtrls;
type
TCOM1Dlg = class(TForm)
OKBtn: TButton;
CancelBtn: TButton;
GroupBox1: TGroupBox;
Label1: TLabel;
Port: TComboBox;
Label2: TLabel;
Baud: TComboBox;
Label3: TLabel;
Databits: TComboBox;
Label4: TLabel;
Stopbits: TComboBox;
Label5: TLabel;
Parity: TComboBox;
Label6: TLabel;
Flowcontrol: TComboBox;
procedure OKBtnClick(Sender: TObject);
procedure CancelBtnClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
COM1Dlg: TCOM1Dlg;
implementation
uses ComPort2,MainFrm;
{$R *.dfm}
procedure TCOM1Dlg.OKBtnClick(Sender: TObject);
var
PortName:String;
PortNum :Integer;
BaudRate:String;
Databits:String;
Stopbits:String;
Parity: String;
FlowCtrl:String;
begin
if not Com1On then
begin
PortName := COM1Dlg.Port.Text;
BaudRate := COM1Dlg.Baud.Text;
Databits := COM1Dlg.Databits.Text;
Stopbits := COM1Dlg.Stopbits.Text;
Parity := COM1Dlg.Parity.Text;
FlowCtrl := COM1Dlg.Flowcontrol.Text;
PortNum := 1; //Init
//Open COM1
if PortName = 'COM1' then
PortNum := 1;
Form1.MSComm1.CommPort := PortNum;
Form1.MSComm1.Settings := BaudRate + Parity + Databits + Stopbits;
Form1.MSComm1.InputMode := 0;
//HandShaking
if FlowCtrl = 'ComNone' then
Form1.MSComm1.Handshaking := 0
else if FlowCtrl = 'comXOnXOff' then
Form1.MSComm1.Handshaking := 1
else if FlowCtrl = 'ComRTS' then
Form1.MSComm1.Handshaking := 2
else if FlowCtrl = 'comRtsXOnXOff' then
Form1.MSComm1.Handshaking := 3;
Form1.MSComm1.PortOpen := true;
Form1.Shape1.Brush.Color := clGreen;
Form1.SetCom1.Caption := 'CloseCom1';
Form1.ShowInf('Com1 is already open.');
Com1On := true;
end
else
begin
Form1.MSComm1.PortOpen := false;
Com1On := false;
Form1.SetCom1.Caption := 'Com1';
Form1.Shape1.Brush.Color := clRed;
end;
COM1Dlg.Close;
end;
procedure TCOM1Dlg.CancelBtnClick(Sender: TObject);
begin
COM1Dlg.Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -