Einzelnen Beitrag anzeigen

ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#2

Re: Formkoordinaten speichern

  Alt 13. Apr 2006, 00:53
Hallo und willkommen in der Delphi-Praxis!


am besten nimmst du dir eine INI-Datei. Das ist mit Abstand die einfachste Lösung. In der Delphi7-Hilfe steht da schon genau als Beispiel drin wie man das mit der Formgröße macht: (leicht abgeändert)

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var
  Ini: TIniFile;
begin
  Ini := TIniFile.Create( ChangeFileExt( Application.ExeName, '.INI' ) );
  try
    Top := Ini.ReadInteger( 'Form', 'Top', 100 );
    Left := Ini.ReadInteger( 'Form', 'Left', 100 );
    Width := Ini.ReadInteger( 'Form', 'Width', 100 );
    Height := Ini.ReadInteger( 'Form', 'Height', 100 );
    if Ini.ReadBool( 'Form', 'InitMax', false ) then
      WindowState = wsMaximized
    else
      WindowState = wsNormal;
  finally
    Ini.Free;
  end;
end;

procedure TForm1.FormClose(Sender: TObject; var Action TCloseAction)
var
  Ini: TIniFile;
begin
  Ini := TIniFile.Create( ChangeFileExt( Application.ExeName, '.INI' ) );
  try
    Ini.WriteInteger( 'Form', 'Top', Top);
    Ini.WriteInteger( 'Form', 'Left', Left);
    Ini.WriteInteger( 'Form', 'Width', Width);
    Ini.WriteInteger( 'Form', 'Height', Height);
    Ini.WriteBool( 'Form', 'InitMax', WindowState = wsMaximized );
  finally
    Ini.Free;
  end;
end;

noch ne Erklärung einer Zeile:

diese Zeile
Height := Ini.ReadInteger( 'Form', 'Height', 100 ); heisst so viel wie:
Aus der Ini wird ein Integer gelesen. Dazu wird der Wert Height aus der Section Form verwendet. Der Alternativwert (falls der Wert Height nicht gefunden wurde) ist 100.
Michael Enßlin
Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß.
Sokrates
  Mit Zitat antworten Zitat