📄 swmmc_form.pas
字号:
unit swMMC_form;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, dxDBTLCl, dxGrClms, dxTL, dxDBCtrl, dxDBGrid, dxCntner, DB,
DBClient, hmClientDataSet, MConnect, SConnect, StdCtrls, ImgList,
ComCtrls, ToolWin, HMWinPos, hmIniTools, ExtCtrls;
type
TForm1 = class(TForm)
sckConn: TSocketConnection;
dspModules: THMClientDataSet;
DataSource1: TDataSource;
dxDBGrid1: TdxDBGrid;
dxDBGrid1Filename: TdxDBGridMaskColumn;
dxDBGrid1ModuleName: TdxDBGridMaskColumn;
dxDBGrid1ModuleIndex: TdxDBGridMaskColumn;
dxDBGrid1Version: TdxDBGridMaskColumn;
dxDBGrid1Designner: TdxDBGridMaskColumn;
dxDBGrid1Memo: TdxDBGridMemoColumn;
dxDBGrid1LastUpdate: TdxDBGridMaskColumn;
dxDBGrid1State: TdxDBGridMaskColumn;
dxDBGrid1LoadWhenStart: TdxDBGridCheckColumn;
dxDBGrid1System: TdxDBGridCheckColumn;
ToolBar1: TToolBar;
btnWriteConfig: TToolButton;
btnAddModule: TToolButton;
btnDeleteModule: TToolButton;
ImageList1: TImageList;
btnStart: TToolButton;
btnPause: TToolButton;
btnStop: TToolButton;
btnExit: TToolButton;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
ToolButton10: TToolButton;
StatusBar1: TStatusBar;
OpenDialog1: TOpenDialog;
HMWinPos1: THMWinPos;
btnRefresh: TToolButton;
Timer1: TTimer;
procedure dxDBGrid1StateGetText(Sender: TObject;
ANode: TdxTreeListNode; var AText: string);
procedure btnWriteConfigClick(Sender: TObject);
procedure btnAddModuleClick(Sender: TObject);
procedure btnDeleteModuleClick(Sender: TObject);
procedure btnStartClick(Sender: TObject);
procedure btnStopClick(Sender: TObject);
procedure btnExitClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure btnRefreshClick(Sender: TObject);
private
HostIP: string;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.dxDBGrid1StateGetText(Sender: TObject;
ANode: TdxTreeListNode; var AText: string);
begin
if dspModules['md_State'] = 1 then
AText := 'Start';
if dspModules['md_State'] = 2 then
AText := 'Pause';
if dspModules['md_State'] = 3 then
AText := 'Stop';
end;
procedure TForm1.btnWriteConfigClick(Sender: TObject);
begin
sckConn.AppServer.WriteConfig;
ShowMessage('Write Config OK');
end;
procedure TForm1.btnAddModuleClick(Sender: TObject);
var
filename: WideString;
begin
if OpenDialog1.Execute then
begin
filename := OpenDialog1.FileName;
sckCOnn.AppServer.AddModule(filename);
dspModules.Close;
dspModules.Open;
end;
end;
procedure TForm1.btnDeleteModuleClick(Sender: TObject);
begin
sckCOnn.AppServer.DeleteModule(dspModules['md_UniKey']);
dspModules.Close;
dspModules.Open;
end;
procedure TForm1.btnStartClick(Sender: TObject);
begin
sckConn.AppServer.StartModule(dspModules['md_UniKey']);
dspModules.Close;
dspModules.Open;
end;
procedure TForm1.btnStopClick(Sender: TObject);
begin
sckConn.AppServer.StopModule(dspModules['md_UniKey']);
dspModules.Close;
dspModules.Open;
end;
procedure TForm1.btnExitClick(Sender: TObject);
begin
close;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
f: THMIniFile;
begin
f := THMIniFile.Create;
f.LoadFromFile('swMMC.ini');
f.RootKey := 'Server';
f.OpenFirstKey;
HostIP := f['Host'];
f.CloseKey;
f.Free;
sckConn.Address := HostIP;
sckConn.Open;
dspModules.Open;
Timer1.Enabled := True;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
var
Online: integer;
begin
OnLine := sckConn.AppServer.GetOnlineUserCount;
StatusBar1.Panels[1].Text := 'Online: ' + IntTostr(Online);
end;
procedure TForm1.btnRefreshClick(Sender: TObject);
begin
dspModules.Close;
dspModules.Open;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -