Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - OpenDialog verschwindet


Bomania - Mo 05.05.03 13:19
Titel: OpenDialog verschwindet
Hallo,

ich verwende in meinem Programm einen OpenDialog. Beim Aufrufen dieses OpenDialogs verschwindet dieser jedoch sofort in den Hintergrund. Gibts für den OpenDialog nicht auch sowas wie ShowModal?

Gruß,


Tino - Mo 05.05.03 13:27

Hi,

benutzt Du das tOpenDialog aus der Unit Dialogs von Borland? Zeig mal wie du den Dialog aufrufst.

Gruß
Tino


Bomania - Mo 05.05.03 13:33

Ja, ich verwende den tOpenDialog. Ich habe den eigentlichen Aufruf in eine eigene Prozedur gesteckt, weil ich den Dialog öfters aufrufe:


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
procedure Tfrm_Main.FormCreate(Sender: TObject);
...
  SelectLanguage();
...
end;

procedure Tfrm_Main.SelectLanguage();
var
  ini:TINIFILE;
  IniFile:String;
begin
  with OpenDialog1 do
  begin
    InitialDir:=ExtractFilePath(ParamStr(0));
    try
      IniFile:=(ExtractFilePath(ParamStr(0))+'inifile.ini');
      INI:=TINIFile.Create(IniFile);
      if Execute then
        INI.WriteString('Settings','LangFile',Filename)
      else
        INI.WriteString('Settings','LangFile',ExtractFilePath(ParamStr(0))+'Wert')
    finally
      INI.Free;
    end; // try
  end; // with
end;


Delete - Mo 05.05.03 14:03

Ruf den Dialog mal so auf:

Quelltext
1:
2:
3:
4:
5:
if OpenDialog1.Execute then
begin
  ...;
  ...;
end;


Bomania - Mo 05.05.03 14:10

Aber das mach ich doch?


Delete - Mo 05.05.03 14:23

Stimmt, aber ganz versteckt im Code. :oops: