Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Fenster Maximieren
Roidsear Ó Ghearmáin - Mo 15.09.03 17:29
Titel: Fenster Maximieren
Hallo!
Ich habe auf meinem System (W2k SP4, Delphi 6 Professional) folgendes
Problem...
Wenn ich in meinem Form (MainProgram) folgendes mache:
Delphi-Quelltext
1: 2: 3: 4:
| procedure TMainProgram.FormCreate(Sender: TObject); begin MainProgram.WindowState := wsMaximized; end; |
...dann ist das Fenster von den Widgets her zwar maximiert, füllt aber nur ca. 2/3 des Bildschirms. Ich habe 1280x1024 als Auflösung. Er maximiert aber immer genau auf 800x600.
In "MainProgram" habe ich alle Constraints oder sonstigen größentechnischen Werte deaktiviert.
Kann mir da vielleicht irgendjemand weiterhelfen?
Grüße,
Rüdiger
CenBells - Mo 15.09.03 17:56
hallo,
hast du mal versucht
Mainprogram.maximize;
aufzurufen?
mit deinem aufruf schein nur der Status geändert zu werden, aber nicht die vergößerung selber durchgeführt zu werden.
Gruß
Ken
Motzi - Mo 15.09.03 20:04
Doch, diese Zuweisung führt zu einem Aufruf von ShowWindow mit SW_MAXIMIZE... warum er allerdings nicht richtig maximiert fallt mir jetzt spontan nix ein... :?
Raphael82 - Mo 15.09.03 22:48
Lese per Screen.Width und Screen.Height mal deine Auflösung aus. Wenn da dann 800*600 rauskommt ist es ein Problem mit deiner Auflösung und hat somit nichts mit Delphi zu tun.
MfG, Raphael
P.S.: Ich weiß, das hilft dir nicht viel aber ich finde es immer erstmal wichtig das man weiß woran es denn nun liegt anstatt blind in der Gegend nach Lösungen zu suchen. Vielleicht kannst ja auch mal versuchen ob es bei jedem Programm so ist wie bei dem, welches du gerade geschrieben hast.
Roidsear Ó Ghearmáin - Di 16.09.03 12:36
Raphael82 hat folgendes geschrieben: |
Lese per Screen.Width und Screen.Height mal deine Auflösung aus.
[...]
|
Danke. Habe die Auflösung ausgelesen. 1280 x 1024. Und jetzt geht es.
Keine Ahnung, warum; habe ja nur Werte ausgelesen. Aber jetzt funktioniert es einwandfrei.
Zitat: |
P.S.: Ich weiß, das hilft dir nicht viel aber ich finde es immer erstmal wichtig das man weiß woran es denn nun liegt anstatt blind in der Gegend nach Lösungen zu suchen.
[...]
|
Sehr richtig... ich wüßte ja jetzt auch gerne, warum das auf einmal geht. Vielleicht, weil ich vorher das Screen Objekt angesprochen habe? Wenn ich das Auslesen wieder weglasse, habe ich das gleiche Problem wieder.
Werde das mal im Auge behalten, auch vielleicht bei neuen Grafiktreibern. (ATI Rage 128 Pro)
Danke soweit erstmal...
...Rüdiger
Adrian - Do 18.09.03 00:10
Dia dhuit!
Zwar kann ich Dir auch nicht genau sagen, woher Dein Problem kommt, aber ich empfehle Dir einen Versuch mit meiner Version. Sie hat bislang immer zuverlässig funktioniert und arbeitet ohne explizite Abfrage der Bildschirm-Koordinaten bei allen Auflösungen.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| procedure TForm1.FormCreate(Sender: TObject); var Hoe: Hwnd; begin Hoe:=FindWindow(nil,'Test-Formular'); ShowWindow(Hoe,SW_MAXIMIZE); end; |
Slán,
Adrian
Moderiert von
Tino: Code- durch Delph-Tags ersetzt.
Roidsear Ó Ghearmáin - Do 18.09.03 00:45
Adrian hat folgendes geschrieben: |
Dia dhuit!
Slán,
Adrian |
Go raibh maith agat, a chara!
...Danke! Das funktioniert auch. Dann kann ich die sinnfreie Screen.Width... Abfrage auch rausnehmen.
Btw...
An bhfuil Gaeilge agat???
Is féidir leat cuir do fhreagair do:
roidsear@celtic-lyrics.com
(Sé mo ríomhseoladh eile... ist ja hier schließlich kein Gälisch-Forum... ;) )
Go n-éirí an bóthar leat!
...Slán go fóill,
Rüdiger
Adrian - Fr 19.09.03 11:45
Servus und Dia dhuit!
Níl mórán Gaeilge agam, weswegen ich hier wieder zu vertrautem Terrain zurückkehre. Aber was nicht ist kann noch werden.
Gruß und Slán,
Adrian
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!