📄 mainform.~pas
字号:
unit MainForm;
interface
uses
{$IFDEF Linux}
QGraphics, QControls, QForms, QDialogs, QComCtrls, QMenus, QButtons,
QExtCtrls, QStdCtrls,
{$ELSE}
Graphics, Controls, Forms, Dialogs, ComCtrls, Menus, Buttons, ExtCtrls,
StdCtrls,
{$ENDIF}
windows, messages, ToolWin, spin, SysUtils, Classes, IdBaseComponent,
IdComponent, IdTCPConnection, IdTCPClient, Grids;
type
TForm1 = class(TForm)
IdTCPClient1: TIdTCPClient;
Timer1: TTimer;
PageControl1: TPageControl;
smslogin: TTabSheet;
loginmemo: TMemo;
GroupBox1: TGroupBox;
Label1: TLabel;
Label7: TLabel;
edpwd: TEdit;
edUserName: TEdit;
bar: TStatusBar;
Button2: TButton;
smssend: TTabSheet;
smsgroup: TTabSheet;
smsfind: TTabSheet;
smsrecv: TTabSheet;
recvmemo: TMemo;
Label3: TLabel;
Edit1: TEdit;
sendmsg: TMemo;
Label5: TLabel;
sendmemo: TMemo;
Button1: TButton;
recvstring: TStringGrid;
Button3: TButton;
Button4: TButton;
procedure FormShow(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure IdTCPClient1Connected(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
suser,spwd:string;
implementation
{$IFDEF MSWINDOWS}{$R *.dfm}{$ELSE}{$R *.xfm}{$ENDIF}
procedure TForm1.FormShow(Sender: TObject);
begin
width := width + 1;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
var
Com,
Msg: string;
begin
if not IdTcpClient1.Connected then
begin
pagecontrol1.Pages[1].Enabled:=true;
pagecontrol1.Pages[1].Enabled:=false;
pagecontrol1.Pages[2].Enabled:=false;
pagecontrol1.Pages[3].Enabled:=false;
edusername.Enabled:=true;
edpwd.Enabled:=true;
button2.Enabled:=true;
button1.Enabled:=false;
bar.Panels[0].Text:='尚未登录';
exit;
end;
pagecontrol1.Pages[1].Enabled:=false;
pagecontrol1.Pages[1].Enabled:=true;
pagecontrol1.Pages[2].Enabled:=true;
pagecontrol1.Pages[3].Enabled:=true;
edusername.Enabled:=false;
edpwd.Enabled:=false;
button2.Enabled:=false;
button1.Enabled:=true;
bar.Panels[0].Text:='登录成功';
Msg := IdTCPClient1.ReadLn('', 5);
if Msg <> '' then
if Msg[1] <> '@' then
begin
loginmemo.Lines.Add(Msg);
end
else
begin
Com := UpperCase(Trim(Copy(Msg, 2, Pos(':', Msg) - 2)));
Msg := UpperCase(Trim(Copy(Msg, Pos(':', Msg) + 1, Length(Msg))));
if Com = 'CLIENTS' then
end;
end;
procedure TForm1.IdTCPClient1Connected(Sender: TObject);
begin
IdTCPClient1.WriteLn(edUserName.Text+'$'+edpwd.Text);
suser:=trim(edUserName.Text);
spwd:=trim(edpwd.text);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
IdTCPClient1.WriteLn('@'+ suser+'$'+ spwd+'$'+ edit1.Text+'$'+sendmsg.Text);
sendmsg.Text := '';
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if edUserName.Text <> '' then
begin
IdTCPClient1.Host := '198.58.16.4';
IdTCPClient1.Port :=6082;
IdTCPClient1.Connect;
end
else
begin
ShowMessage('你必须输入服务器IP地址和端口号');
button2.Enabled := true;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -