📄 un_config.pas
字号:
unit Un_config;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls;
type
Tform_config = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
Button1: TButton;
TabSheet2: TTabSheet;
GroupBox2: TGroupBox;
cb_runonboot: TCheckBox;
Button2: TButton;
Button3: TButton;
TabSheet3: TTabSheet;
GroupBox1: TGroupBox;
Label1: TLabel;
ed_conntimeout: TEdit;
GroupBox3: TGroupBox;
Label2: TLabel;
ed_msgsound: TEdit;
Button4: TButton;
cb_alwplaysound: TCheckBox;
lb_ipsect: TListBox;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Button5: TButton;
Button6: TButton;
procedure ed_conntimeoutKeyPress(Sender: TObject; var Key: Char);
procedure FormShow(Sender: TObject);
procedure ed_conntimeoutExit(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Button6Click(Sender: TObject);
private
{ Private declarations }
public
procedure refconfig; //读取设置信息;
procedure setconfig; //更新设置信息;
end;
var
form_config: Tform_config;
implementation
uses Un_main;
{$R *.dfm}
procedure Tform_config.ed_conntimeoutKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9',#8]) then
key:=#0;
end;
procedure Tform_config.FormShow(Sender: TObject);
begin
refconfig;
end;
procedure Tform_config.refconfig;
begin
ed_conntimeout.Text:=inttostr(form_main.conntimeout);
cb_runonboot.Checked:=form_main.runonboot;
ed_msgsound.Text:=form_main.msgsoundfilename;
cb_alwplaysound.Checked:=form_main.alwplaysound;
lb_ipsect.Items.Text:=form_main.ipsect;
end;
procedure Tform_config.setconfig;
begin
form_main.conntimeout:=strtoint(ed_conntimeout.Text);
form_main.runonboot:= cb_runonboot.Checked;
form_main.msgsoundfilename:=ed_msgsound.Text;
form_main.alwplaysound:=cb_alwplaysound.Checked;
form_main.ipsect:=lb_ipsect.Items.Text;
end;
procedure Tform_config.ed_conntimeoutExit(Sender: TObject);
begin
if (sender as Tedit).Text='' then
(sender as Tedit).Text:='100';
end;
procedure Tform_config.Button3Click(Sender: TObject);
begin
close;
end;
procedure Tform_config.Button1Click(Sender: TObject);
begin
setconfig;
form_main.updatecfg;
form_main.readdatecfg;
end;
procedure Tform_config.Button2Click(Sender: TObject);
begin
setconfig;
form_main.updatecfg;
form_main.readdatecfg;
close;
end;
procedure Tform_config.Button4Click(Sender: TObject);
begin
form_main.op_file.Filter:='声音文件|*.wav|所有文件|*.*';
form_main.op_file.Title:='请选择要使用的消息提示音';
form_main.op_file.Options:=[ofHideReadOnly,ofNoChangeDir,ofEnableSizing];
if form_main.op_file.Execute then
ed_msgsound.Text:=form_main.op_file.FileName;
end;
procedure Tform_config.Button5Click(Sender: TObject);
begin
if edit1.Text='' then edit1.Text:='0';
if edit2.Text='' then edit2.Text:='0';
if edit3.Text='' then edit3.Text:='0';
if (255>strtoint(edit1.Text)) and (strtoint(edit1.Text)>=1) and (255>strtoint(edit2.Text)) and (strtoint(edit2.Text)>=0) and (255>strtoint(edit3.Text)) and(strtoint(edit3.Text)>=0) then
begin
if lb_ipsect.Items.IndexOf(edit1.Text+'.'+edit2.Text+'.'+edit3.Text)<0 then
lb_ipsect.Items.Add(edit1.Text+'.'+edit2.Text+'.'+edit3.Text);
end
else
messagebox(handle,'请正确输入地址','地址错误',mb_ok+mb_iconerror);
end;
procedure Tform_config.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key ='.' then
edit2.SetFocus;
ed_conntimeoutKeyPress(sender,key);
end;
procedure Tform_config.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if key ='.' then
edit3.SetFocus;
ed_conntimeoutKeyPress(sender,key);
end;
procedure Tform_config.Button6Click(Sender: TObject);
var
i:integer;
s:Tstrings;
begin
for i:=1 to lb_ipsect.Items.Count do
begin
if lb_ipsect.Selected[i-1] then
begin
s:=Tstringlist.Create;
s.Text:=stringreplace(lb_ipsect.Items.Strings[i-1],'.',#13#10,[rfReplaceAll]);
edit1.Text:=s.Strings[0];
edit2.Text:=s.Strings[1];
edit3.Text:=s.Strings[2];
lb_ipsect.Items.Delete(i-1);
break;
s.Destroy;
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -