procedure TMainForm.FormCreate(Sender: TObject); var FileHandle:integer; iniFile:TiniFile; z:integer; begin CurrentIcon:=-1; FileNum:=0; inifile:=TiniFile.Create('SoftBox.ini'); iconSize:=inifile.ReadInteger('Setting','IconSize',32); ImageList_SetIconSize(image_lv.handle,iconSize,iconSize); case IconSize of 16:MMenuView_SmallIcon.Checked:=True; 32:MMenuView_LargeIcon.Checked:=True; end; with iniFile do begin PassStr:=ReadString('Setting','Password',''); for z:=1 to strtoint(ReadString('FileInfo','FileNum','0')) do begin addFile(readstring('FileInfo',inttostr(z),'')); addLvItem(readstring('FileInfo',inttostr(z),'')); end; MainForm.top:=ReadInteger('FormSize','Top',100); MainForm.Left:=ReadInteger('FormSize','Left',100); MainForm.Width:=ReadInteger('FormSize','Width',100); MainForm.Height:=ReadInteger('FormSize','Height',100); {Option set} Option_Boot_run:=ReadBool('Setting','BootRun',False); OpTion_Minimized_Systray:=ReadBool('Setting','InSystray',False); Option_Quick_hide:=ReadBool('Setting','QuickHide',False);
program SoftBox;uses Forms, Main in 'Main.pas' {MainForm}, Option in 'Option.pas' {frmOption}, PassWord in 'PassWord.pas' {frmPassword}, ProP in 'ProP.pas' {frmProP}, about in 'about.pas' {AboutBox};{$R *.RES}begin Application.Initialize; Application.CreateForm(TMainForm, MainForm); Application.CreateForm(TfrmOption, frmOption); Application.CreateForm(TfrmPassword, frmPassword); Application.CreateForm(TfrmProP, frmProP); Application.CreateForm(TAboutBox, AboutBox); Application.Run;这是已经去掉了哪个窗体的代码,所以不会出现那种现象 但是一但加入哪个窗体,马上出现怪现象,两个窗体一起显示
var
FileHandle:integer;
iniFile:TiniFile;
z:integer;
begin
CurrentIcon:=-1;
FileNum:=0;
inifile:=TiniFile.Create('SoftBox.ini'); iconSize:=inifile.ReadInteger('Setting','IconSize',32);
ImageList_SetIconSize(image_lv.handle,iconSize,iconSize);
case IconSize of
16:MMenuView_SmallIcon.Checked:=True;
32:MMenuView_LargeIcon.Checked:=True;
end; with iniFile do
begin
PassStr:=ReadString('Setting','Password','');
for z:=1 to strtoint(ReadString('FileInfo','FileNum','0')) do
begin
addFile(readstring('FileInfo',inttostr(z),''));
addLvItem(readstring('FileInfo',inttostr(z),''));
end;
MainForm.top:=ReadInteger('FormSize','Top',100);
MainForm.Left:=ReadInteger('FormSize','Left',100);
MainForm.Width:=ReadInteger('FormSize','Width',100);
MainForm.Height:=ReadInteger('FormSize','Height',100); {Option set}
Option_Boot_run:=ReadBool('Setting','BootRun',False);
OpTion_Minimized_Systray:=ReadBool('Setting','InSystray',False);
Option_Quick_hide:=ReadBool('Setting','QuickHide',False);
tb.Visible:=ReadBool('Setting','ToolBar',True);
sb.Visible:=ReadBool('Setting','StatusBar',True);
MMenuView_toolbar.Checked:=tb.Visible;
MMenuView_Statusbar.Checked:=sb.Visible; application.OnMinimize:=OnMin;
end;
inifile.Free;
end;
太邪门了,根本就没有SHOW之类的语句呀
Forms,
Main in 'Main.pas' {MainForm},
Option in 'Option.pas' {frmOption},
PassWord in 'PassWord.pas' {frmPassword},
ProP in 'ProP.pas' {frmProP},
about in 'about.pas' {AboutBox};{$R *.RES}begin
Application.Initialize;
Application.CreateForm(TMainForm, MainForm);
Application.CreateForm(TfrmOption, frmOption);
Application.CreateForm(TfrmPassword, frmPassword);
Application.CreateForm(TfrmProP, frmProP);
Application.CreateForm(TAboutBox, AboutBox);
Application.Run;这是已经去掉了哪个窗体的代码,所以不会出现那种现象
但是一但加入哪个窗体,马上出现怪现象,两个窗体一起显示
我说么
你一次就把所有的窗口都创建了
而且所有的窗口visible都true
当然不调用show也会出现
Application.CreateForm(TfrmOption, frmOption);
Application.CreateForm(TfrmPassword, frmPassword);
Application.CreateForm(TfrmProP, frmProP);
Application.CreateForm(TAboutBox, AboutBox);
去掉试试
Application.CreateForm(TfrmOption, frmOption);
Application.CreateForm(TfrmPassword, frmPassword);
Application.CreateForm(TfrmProP, frmProP);
Application.CreateForm(TAboutBox, AboutBox);
去掉试试说地对
如:
frmoption:=tfrmoption.create(application)
把除了主窗口之外的所有窗口的visible属性都置为false
然后象楼上说的动态创建和调用就行了