📄 comport3.pas
字号:
unit Comport3;
interface
uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls,
Buttons, ExtCtrls;
type
TCOM3Dlg = 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
COM3Dlg: TCOM3Dlg;
implementation
uses MainFrm, ComPort2;
{$R *.dfm}
procedure TCOM3Dlg.OKBtnClick(Sender: TObject);
var
PortName:String;
PortNum :Integer;
BaudRate:String;
Databits:String;
Stopbits:String;
Parity: String;
FlowCtrl:String;
begin
if not Com3On then
begin
PortName:= COM3Dlg.Port.Text;
BaudRate:= COM3Dlg.Baud.Text;
Databits:= COM3Dlg.Databits.Text;
Stopbits:= COM3Dlg.Stopbits.Text;
Parity:= COM3Dlg.Parity.Text;
PortNum := 1;
if PortName = 'COM3' then
PortNum := 3;
Form1.MSComm3.CommPort := PortNum;
Form1.MSComm3.Settings := BaudRate + Parity + Databits + Stopbits;
Form1.MSComm3.InputMode := 0;
if FlowCtrl = 'ComNone' then
Form1.MSComm3.Handshaking := 0
else if FlowCtrl = 'comXOnXOff' then
Form1.MSComm3.Handshaking := 1
else if FlowCtrl = 'ComRTS' then
Form1.MSComm3.Handshaking := 2
else if FlowCtrl = 'comRtsXOnXOff' then
Form1.MSComm3.Handshaking := 3;
Form1.MSComm3.PortOpen := true;
Form1.Shape3.Brush.Color := clGreen;
Form1.SetCom3.Caption := 'CloseCom3';
Com3On := true;
Form1.ShowInf('Com3 is already open');
end
else
begin
Form1.MSComm3.PortOpen := false;
Com3On := false;
Form1.SetCom3.Caption := 'Com3';
Form1.Shape3.Brush.Color := clRed;
end;
COM3Dlg.Close;
end;
procedure TCOM3Dlg.CancelBtnClick(Sender: TObject);
begin
COM3Dlg.Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -