📄 unitmain.pas
字号:
unit UnitMain;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, XPMan, ScktComp, ComCtrls, Buttons, StdCtrls, ImgList, jpeg,
Menus, IniFiles,
UnitFormControl,
UnitVariables,
UnitFormNotifica, IdThreadMgr, IdThreadMgrDefault, IdAntiFreezeBase,
IdAntiFreeze, IdBaseComponent, IdComponent, IdTCPServer;
const WM_POP_MESSAGE = WM_USER + 1;
type
TFormMain = class(TForm)
StatusBar: TStatusBar;
XPManifest: TXPManifest;
ImageTitulo: TImage;
BtnEscuchar: TSpeedButton;
PopupMenuConexiones: TPopupMenu;
Abrir1: TMenuItem;
N1: TMenuItem;
Ping1: TMenuItem;
Cambiarnombre1: TMenuItem;
ImageList: TImageList;
BtnOpciones: TSpeedButton;
BtnAbout: TSpeedButton;
ListViewConexiones: TListView;
BtnConfigServer: TSpeedButton;
ServerSocket1: TIdTCPServer;
IdAntiFreeze1: TIdAntiFreeze;
IdThreadMgrDefault1: TIdThreadMgrDefault;
procedure BtnEscucharClick(Sender: TObject);
procedure ServerSocketClientConnect(Sender: TObject;
Socket: TCustomWinSocket);
procedure ServerSocketClientDisconnect(Sender: TObject;
Socket: TCustomWinSocket);
procedure ServerSocketClientError(Sender: TObject;
Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;
var ErrorCode: Integer);
procedure ListViewConexionesContextPopup(Sender: TObject;
MousePos: TPoint; var Handled: Boolean);
procedure Abrir1Click(Sender: TObject);
procedure BtnOpcionesClick(Sender: TObject);
procedure BtnAboutClick(Sender: TObject);
procedure Cambiarnombre1Click(Sender: TObject);
procedure Ping1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure LeerArchivoINI();
procedure GuardarArchivoINI();
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BtnConfigServerClick(Sender: TObject);
procedure ServerSocket1Connect(AThread: TIdPeerThread);
procedure ServerSocket1Execute(AThread: TIdPeerThread);
procedure ServerSocket1Disconnect(AThread: TIdPeerThread);
private
{ Private declarations }
procedure OnPopMessage(var Msg: TMessage); message WM_POP_MESSAGE;
public
procedure EliminarConexion(Socket: TCustomWinSocket);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
{ Public declarations }
end;
var
FormMain: TFormMain;
implementation
uses UnitOpciones, UnitAbout, UnitID, UnitFormConfigServer;
{$R *.dfm}
procedure TFormMain.OnPopMessage(var Msg: TMessage);
var
item: TListItem;
VentanaNotifica : TFormNotifica;
begin
item := TListItem(Msg.Wparam);
VentanaNotifica := TFormNotifica.Create(self, Item);
VentanaNotifica.Show;
VentanaNotifica.Timer.Enabled := True;
end;
procedure TFormMain.BtnEscucharClick(Sender: TObject);
var
h: TBitmap;
List: TList;
Athread: TidPeerThread;
i: integer;
begin
if BtnEscuchar.Caption = 'Escuchar' then
begin
try
ServerSocket1.DefaultPort := StrToInt(FormOpciones.EditPuerto.Text);
ServerSocket1.Active := true;
FormOpciones.EditPuerto.Enabled := False;
BtnEscuchar.Caption := 'Detener';
except
MessageDlg('El puerto ' + FormOpciones.EditPuerto.Text + ' ya est
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -