📄 frmini.pas
字号:
unit FrmInI;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, StdCtrls, Buttons, jpeg, Frminilogin, frmINIsmtp, Frminiosoon,
Frminisuc, FrmWelcome, xutils, rcdstud;
type
Tfmini = class(TForm)
StaticText1: TStaticText;
btnnext: TBitBtn;
btnpre: TBitBtn;
btndo: TBitBtn;
Bevel2: TBevel;
btnhelp: TBitBtn;
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
Image1: TImage;
fminisuc1: Tfminisuc;
fminiosoon1: Tfminiosoon;
fminismtp1: Tfminismtp;
Fminilogin1: TFminilogin;
Fmwelcome1: TFmwelcome;
procedure btnnextClick(Sender: TObject);
procedure btnpreClick(Sender: TObject);
procedure btndoClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fmini: Tfmini;
implementation
{$R *.DFM}
procedure Tfmini.btnpreClick(Sender: TObject);
begin
if fminisuc1.Visible then
begin
fmwelcome1.Visible := false;
fminilogin1.visible := false;
fminismtp1.Visible := false;
fminiosoon1.Visible := true;
fminisuc1.Visible := false;
btnpre.Enabled := true;
btnnext.Enabled := true;
btndo.Caption := '取消(&C)'
end
else if fminiosoon1.Visible then
begin
fmwelcome1.Visible := false;
fminilogin1.visible := false;
fminismtp1.Visible := true;
fminiosoon1.Visible := false;
fminisuc1.Visible := false;
btnpre.Enabled := true;
btnnext.Enabled := true;
btndo.Caption := '取消(&C)'
end
else if fminismtp1.Visible then
begin
fmwelcome1.Visible := false;
fminilogin1.visible := true;
fminismtp1.Visible := false;
fminiosoon1.Visible := false;
fminisuc1.Visible := false;
btnpre.Enabled := true;
btnnext.Enabled := true;
btndo.Caption := '取消(&C)'
end
else if fminilogin1.Visible then
begin
fmwelcome1.Visible := true;
fminilogin1.visible := false;
fminismtp1.Visible := false;
fminiosoon1.Visible := false;
fminisuc1.Visible := false;
btnnext.Enabled := true;
btnpre.Enabled := false;
btndo.Caption := '取消(&C)'
end;
end;
procedure Tfmini.btnnextClick(Sender: TObject);
begin
if fmwelcome1.Visible then
begin
fmwelcome1.Visible := false;
fminilogin1.visible := true;
fminismtp1.Visible := false;
fminiosoon1.Visible := false;
fminisuc1.Visible := false;
btnpre.Enabled := true;
btnnext.Enabled := true;
btndo.Caption := '取消(&C)'
end
else if fminilogin1.Visible then
begin
fmwelcome1.Visible := false;
fminilogin1.visible := false;
fminismtp1.Visible := true;
fminiosoon1.Visible := false;
fminisuc1.Visible := false;
btnpre.Enabled := true;
btnnext.Enabled := true;
btndo.Caption := '取消(&C)'
end
else if fminismtp1.Visible then
begin
fmwelcome1.Visible := false;
fminilogin1.visible := false;
fminismtp1.Visible := false;
fminiosoon1.Visible := true;
fminisuc1.Visible := false;
btnpre.Enabled := true;
btnnext.Enabled := true;
btndo.Caption := '取消(&C)'
end
else if fminiosoon1.Visible then
begin
fmwelcome1.Visible := false;
fminilogin1.visible := false;
fminismtp1.Visible := false;
fminiosoon1.Visible := false;
fminisuc1.Visible := true;
btnnext.Enabled := false;
btnpre.Enabled := true;
btndo.Caption := '完成(&F)';
end;
end;
procedure Tfmini.btndoClick(Sender: TObject);
var
smtpfile: file of SmtpSetup;
osoonfile: file of OsoonUser;
loginfile: file of PLoginUser;
rcdsmtp: smtpsetup;
rcdosoon: osoonuser;
rcdlogin: Ploginuser;
temfn: string;
ok1: boolean;
ok2: boolean;
ok3: boolean;
begin
if btndo.Caption = '关闭(&X)' then
begin
fmini.Close;
end;
fminisuc1.meno.Lines.Clear;
if (btndo.caption = '取消(&C)') and yesnobox('真的要退出吗?') then
begin
close;
end;
if btndo.caption = '完成(&F)' then
begin
{
进行数据有效性验证先不进行,但要注意用trim来去掉空格
文件名分别为
user.log
osoonini.dat
smtpini.dat
}
//对用户名部分进行处理
{********************************************}
temfn := 'user.log';
if FileExists(temfn) then //如果原用户名及密码存在则检查是否正确
begin
assignfile(loginfile, temfn);
reset(loginfile);
read(loginfile, rcdlogin);
closefile(loginfile);
if (fminilogin1.oUsername.Text = rcdlogin.name) and (fminilogin1.oPassword.Text = rcdlogin.password) then
begin
if (fminilogin1.nUsername.text <> '') and (fminilogin1.nPassword.text = fminilogin1.nPasswordr.text) then
begin
assignfile(loginfile, temfn);
rewrite(loginfile);
fminisuc1.meno.Lines.Add('正生成USER.LOG文件......');
rcdlogin.name := trim(fminilogin1.nUsername.Text);
rcdlogin.password := fminilogin1.nPassword.Text;
write(loginfile, rcdlogin);
fminisuc1.meno.Lines.Add('正生向USER.LOG文件写入数据......');
closefile(loginfile);
fminisuc1.meno.Lines.add('USER.LOG成功生成!');
ok1 := true;
end
else
begin
msgbox('两次输入的新密码不对或新用户名为空请检查!');
fmwelcome1.Visible := false;
fminilogin1.visible := true;
fminismtp1.Visible := false;
fminiosoon1.Visible := false;
fminisuc1.Visible := false;
btnnext.Enabled := true;
btnpre.Enabled := true;
btndo.Caption := '取消(&C)';
fminilogin1.nPassword.SetFocus;
ok1 := false;
end;
end
else
begin
msgbox('原用户名和密码不对请检查!');
fmwelcome1.Visible := false;
fminilogin1.visible := true;
fminismtp1.Visible := false;
fminiosoon1.Visible := false;
fminisuc1.Visible := false;
btnnext.Enabled := true;
btnpre.Enabled := true;
btndo.Caption := '取消(&C)';
fminilogin1.opassword.SetFocus;
ok1 := false;
end;
end
else
begin
msgbox('丢失user.log文件,软件不完整,请email到joh007@21cn.com索取!');
ok1 := false;
close;
end;
{********************************************}
{***********************************************
//对smtp进行设置
}
with fminismtp1 do
begin
if (strname.Text <> '') and (strsmtp.Text <> '') and (strport.Text <> '') and (stremail.Text <> '') then
begin
//一切正常可以进行写入操作。
temfn := 'smtpini.dat';
assignfile(smtpfile, temfn);
rewrite(smtpfile);
fminisuc1.meno.Lines.Add('正在生成smtpini.dat......');
reset(smtpfile);
rcdsmtp.strUserId := trim(strname.text);
rcdsmtp.strSmtp := trim(strsmtp.Text);
rcdsmtp.strPort := trim(strport.Text);
rcdsmtp.strEmail := trim(stremail.text);
fminisuc1.meno.Lines.Add('正在向smtpini.dat写入数据......');
write(smtpfile, rcdsmtp);
closefile(smtpfile);
fminisuc1.meno.Lines.Add('成功生成smtpini.dat!');
ok2 := true;
end
else
begin
//有点问题提示要把所有项目都填写完整
msgbox('smtp设置项目必须全部填写!');
fmwelcome1.Visible := false;
fminilogin1.visible := false;
fminismtp1.Visible := true;
fminiosoon1.Visible := false;
fminisuc1.Visible := false;
btnnext.Enabled := true;
btnpre.Enabled := true;
btndo.Caption := '取消(&C)';
fminismtp1.strname.SetFocus;
ok2 := false;
end;
end;
{****************************************************}
{进行osoon同学录设置工作}
with fminiosoon1 do
begin
if (strname.Text <> '') and (strpassword.Text <> '') and (strdelay.Text <> '') then
begin
//写入数据
temfn := 'osoonini.dat';
assignfile(osoonfile, temfn);
fminisuc1.meno.Lines.Add('正在生成osoonini.dat......');
rewrite(osoonfile);
reset(osoonfile);
rcdosoon.username := trim(strname.Text);
rcdosoon.password := trim(strpassword.Text);
rcdosoon.classid := trim(strclassid.Text);
rcdosoon.webdelay := strtoint(trim(strdelay.text));
fminisuc1.meno.Lines.Add('正在向osoonini.dat写入数据......');
write(osoonfile, rcdosoon);
closefile(osoonfile);
fminisuc1.meno.Lines.Add('成功生成osoonini.dat');
ok3 := true;
end
else
begin
msgbox('osoon登陆设置有些项目没有完善!');
fmwelcome1.Visible := false;
fminilogin1.visible := false;
fminismtp1.Visible := false;
fminiosoon1.Visible := true;
fminisuc1.Visible := false;
btnnext.Enabled := true;
btnpre.Enabled := true;
btndo.Caption := '取消(&C)';
fminiosoon1.strname.SetFocus;
ok3 := false;
end;
end;
{*****************************************************}
if ok1 and ok2 and ok3 then
btndo.Caption := '关闭(&X)';
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -