Autor Beitrag
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8554
Erhaltene Danke: 481

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Sa 18.02.06 14:58 
So, jetzt hab ich mal ne einfache Frage. ;-)

Und zwar möchte ich die Größe meiner Form in einer Ini speichern. Das ist ja eigentlich ganz einfach, nämlich so:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
ini.WriteBool('Fenster', 'maximiert', WindowState=wsMaximized);
// [x]
ini.WriteInteger('Fenster','Width',Form1.Width);
ini.WriteInteger('Fenster','Height',Form1.Height);
ini.WriteInteger('Fenster','Top',Form1.Top);
ini.WriteInteger('Fenster','Left',Form1.Left);

Wenn ich diese Daten dann wieder auslese, nachdem ich das Programm im maximierten Zustand beendet habe, erscheint meine Form auch dann maximiert, wenn ich den "maximiert/normal-Button" in der Titelleiste anklicke. D.h. es gibt keinen Größenunterschied zwischen maximiert und nicht maximiert. Ist ja auch klar.

Ich möchte aber die Werte speichern, die meine Form im nichtmaximierten Zustand hätte, und zwar ohne, dass man an Stelle [X] oben im Code ein WindowState := wsNormal; einfügt (das sieht beim Beenden nämlich blöd aus...).
Wie komme ich an diese Werte?


Moderiert von user profile iconGausi: Topic aus VCL (Visual Component Library) verschoben am Sa 18.02.2006 um 18:07

_________________
We are, we were and will not be.
MSCH
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1448
Erhaltene Danke: 3

W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
BeitragVerfasst: Sa 18.02.06 16:36 
was meinst du, mit "nicht-maximierten Zustand"? Den Zustand, wie du in der
Entwicklung mal festgelegt hast?

Definier die Werte die du mit "nicht-maximierten Zustand" hat im Programm.


grez
msch

_________________
ist das politisch, wenn ich linksdrehenden Joghurt haben möchte?
Gausi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8554
Erhaltene Danke: 481

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Sa 18.02.06 16:51 
Nein, nicht die. Die könnte man ja als Default-Konstanten im Code definieren. Ich meine die Werte, die die Form annehmen würde, wenn man im maximierten Zustand auf den Knopf in der Titelleiste klickt. Ich hoffe, die Bilder machen klar, was ich meine.
Einloggen, um Attachments anzusehen!
_________________
We are, we were and will not be.
Lannes
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2352
Erhaltene Danke: 4

Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
BeitragVerfasst: Sa 18.02.06 17:26 
Hallo,
nehme an das Du damit zu Deinem Ziel kommst :wink:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
var PosAndSize : PWindowPlacement;
    L,T,R,B : Integer;
begin
  GetMem(PosAndSize,SizeOf(TWindowPlacement));
  try
     PosAndSize^.Length := SizeOf(TWindowPlacement);
     if GetWindowPlacement(Handle,PosAndSize) then begin
        L := PosAndSize^.rcNormalPosition.Left;
        T := PosAndSize^.rcNormalPosition.Top;
        R := PosAndSize^.rcNormalPosition.Right;
        B := PosAndSize^.rcNormalPosition.Bottom;
        end;
    showmessage(IntToStr(L));
    //...
  finally
     FreeMem(PosAndSize,SizeOf(TWindowPlacement))
  end
;

_________________
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
Gausi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8554
Erhaltene Danke: 481

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Sa 18.02.06 18:07 
Jep, das ist genau das, was ich meinte. Danke!

(nur muss ich das jetzt wohl nach WinApi verschieben...:lol:)

_________________
We are, we were and will not be.