📄 mainformpas.pas
字号:
unit mainformpas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, ComCtrls, RxRichEd, IdBaseComponent,
IdComponent, IdTCPConnection, IdTCPClient, mytype, myconst,tcpthreadpas,
Menus, ImgList, OleCtrls, SHDocVw, Buttons, fiveformpas;
type
Tmainform = class(TForm)
Panel1: TPanel;
Splitter1: TSplitter;
Panel2: TPanel;
onlineview: TListView;
Splitter2: TSplitter;
Panel3: TPanel;
ColorBox1: TColorBox;
IdTCPClient1: TIdTCPClient;
chatlist: TRichEdit;
Edit1: TEdit;
Edit2: TEdit;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
ImageList1: TImageList;
Button2: TButton;
Label1: TLabel;
WebBrowser1: TWebBrowser;
N2: TMenuItem;
procedure FormCreate(Sender: TObject);
procedure Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit1DblClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure N2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
user:Ruserdata;
tcp1:Ttcpthread;
end;
var
mainform: Tmainform;
fiveform1:Tfiveform;
implementation
uses loginformpas;
{$R *.dfm}
procedure Tmainform.FormCreate(Sender: TObject);
var
loginform:Tloginform;
begin
loginform:=Tloginform.Create(self);
webbrowser1.Navigate('http://www.delphibbs.com/delphibbs/index.asp?skin=1');
loginform.ShowModal;
tcp1.setobject(idtcpclient1,onlineview,chatlist);
tcp1.Resume;
end;
procedure Tmainform.Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
ctext:Rcommandtext;
mestext:Rtextdata;
begin
if key=13 then
begin
ctext.command:=Csendtext;
mestext.fromwho:=self.user.username;
mestext.towho:=edit1.Text;
mestext.text:=tedit(sender).text;
mestext.size:=10;
mestext.color:=colorbox1.Selected;
edit2.Text:='';
idtcpclient1.WriteBuffer(ctext,sizeof(ctext));
idtcpclient1.WriteBuffer(mestext,sizeof(mestext));
end;
end;
procedure Tmainform.Edit1DblClick(Sender: TObject);
begin
Tedit(sender).Text:='所有人';
end;
procedure Tmainform.N1Click(Sender: TObject);
begin
if onlineview.Selected.caption<>self.user.username then
edit1.Text:=onlineview.Selected.caption;
end;
procedure Tmainform.Button1Click(Sender: TObject);
var
ctext:Rcommandtext;
begin
ctext.command:=Cmodiwhatdoing;
if Tbutton(sender).caption='备战' then
begin
ctext.num:=1;
tbutton(sender).Caption:='休息';
tcp1.fiveform1:=Tfiveform.Create(self);
tcp1.fiveform1.playerme:=user;
tcp1.fiveform1.Show;
tcp1.fiveform1.Hide;
end
else
begin
ctext.num:=0;
Tbutton(sender).caption:='备战';
tcp1.fiveform1.free;
tcp1.fiveform1:=nil;
end;
idtcpclient1.WriteBuffer(ctext,sizeof(ctext));
idtcpclient1.WriteBuffer(self.user,sizeof(self.user));
end;
procedure Tmainform.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
//idtcpclient1.Disconnect;
//tcp1.Suspend;
//tcp1.Free;
end;
procedure Tmainform.N2Click(Sender: TObject);
var
fiveform:Tfiveform;
ctext:Rcommandtext;
i:integer;
userdata:Ruserdata;
begin
if onlineview.Selected.imageindex<>1 then
begin
showmessage('对方并没有备战');
exit;
end;
ctext.command:=cstart;
for i:=high(tcp1.online) downto 0 do
begin
if tcp1.online[i].username=onlineview.Selected.Caption then
begin
userdata:=tcp1.online[i];
break;
end;
end;
idtcpclient1.WriteBuffer(ctext,sizeof(ctext));
idtcpclient1.WriteBuffer(userdata,sizeof(userdata));
fiveform:=Tfiveform.Create(application);
fiveform.playerme:=user;
fiveform.playerenemy:=userdata;
fiveform.qitype:='白';
fiveform.Show;
end;
procedure Tmainform.BitBtn1Click(Sender: TObject);
var
userdata:Ruserdata;
fiveform:Tfiveform;
begin
userdata.username:='talent';
userdata.IP:='218.107.2.177';
fiveform:=Tfiveform.Create(application);
fiveform.playerme:=user;
fiveform.playerenemy:=userdata;
fiveform.qitype:='黑';
fiveform.Show;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -