Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Form mit bsToolWindow-BorderStyle und Height := 0 (https://www.delphipraxis.net/31569-form-mit-bstoolwindow-borderstyle-und-height-%3D-0-a.html)

Nuclear-Ping 11. Okt 2004 12:18


Form mit bsToolWindow-BorderStyle und Height := 0
 
Hallo,

ich habe eine Form, die als BorderStyle bsToolWindow hat. Wenn ich diese nun auf Height := 0 setze, bleibt irgendwie ein kleiner Rest von der ClientArea der Form sichtbar, es soll allerdings nur die Titelleiste sichtbar sein, wie es z.B. in PaintShopPro 7 der Fall ist.

Bild (von mir):
http://www.open-ware.de/tmp/bsToolWin_H0.jpg

Bild (von PSP7):
http://www.open-ware.de/tmp/bsToolWin_PSP7.jpg

Lässt sich das vermeiden bzw. so einrichten wie bei PSP7 und wenn ja, wie? :gruebel:

Grüße,
Mario

toms 11. Okt 2004 12:30

Re: Form mit bsToolWindow-BorderStyle und Height := 0
 
Hi,

Ist etwas seltsam. Auch das abfangen von WM_GETMINMAXINFO und das setzen von
ptMinTrackSize.Y brachte keinen Erfolg.

Stevie 11. Okt 2004 15:13

Re: Form mit bsToolWindow-BorderStyle und Height := 0
 
:wall: Uff, ich hab's auch nicht hinbekommen! :pale:
Scheinbar ist die Höhe der normalen Titelleiste ausschlaggebend für die Minimalgröße des Fensters. :gruebel:
Es gibt zwar in der Registry einige Einträge (HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics), z.B. SmCaptionHeight,
aber irgendwie juckt das überhaupt nicht, selbst, wenn ich mit CreateWindowEx ein Fenster mit dem Parameter WS_EX_TOOLWINDOW erstelle!
Mit GetSystemMetrics(SM_CYSMCAPTION) bekomme ich zwar bei mir 16 (Pixel) heraus, aber das Fenster ist trotzdem minimal 27 Pixel hoch! :wiejetzt:

Nuclear-Ping 11. Okt 2004 15:40

Re: Form mit bsToolWindow-BorderStyle und Height := 0
 
Mmmmh ... danke für eure Mühen! :) :dp:

Das is ja beschränkend, um's mal gesittet auszudrücken. Würde mich mal interessieren, wie das die Jungs mit PSP dann hingekriegt haben, weil so kann ich das doch nicht den Leuten geben ... :wall:

Stevie 11. Okt 2004 15:46

Re: Form mit bsToolWindow-BorderStyle und Height := 0
 
Muss es denn bsToolWindow sein? Oder reicht nicht auch folgendes?
Delphi-Quellcode:
BorderStyle := bsDialog;
ClientHeight := 0;

Nuclear-Ping 11. Okt 2004 16:01

Re: Form mit bsToolWindow-BorderStyle und Height := 0
 
Yup, muss bsToolWindow sein. Bei dem einen Fenster zwar nicht unbedingt, aber ich hab noch 2 andere davon in meiner App und da sind auch eigene Caption-Buttons (ähnlich wie bei dem PSP7-Bild) mit drin, was auf bsDialog in Kombination mit dem Windows XP Style schrecklich ausschaut ... :?

Stevie 11. Okt 2004 16:03

Re: Form mit bsToolWindow-BorderStyle und Height := 0
 
Hast du Spy++ oder WinSight? Dann guck doch mal, was das für'n ToolWindow is bei PSP7 und ob da bestimmte Messages hingeschickt werden oder sowas...

Nuclear-Ping 11. Okt 2004 16:32

Re: Form mit bsToolWindow-BorderStyle und Height := 0
 
OK, danke für den Tip, werd ich gleich mal tun.

Nuclear-Ping 11. Okt 2004 20:14

Re: Form mit bsToolWindow-BorderStyle und Height := 0
 
Hab grad mal mit dem Winspector geschaut (http://www.windows-spy.com/) und der meint, dass es sich dabei um eine Fenster-Klasse #32770 handelt.

Bild (Overview markiert):
http://www.open-ware.de/tmp/PSP_OverviewWin.jpg

:gruebel:

Stevie 12. Okt 2004 06:23

Re: Form mit bsToolWindow-BorderStyle und Height := 0
 
Hmm, #32770 ist der Klassename für eine DialogBox... (Quelle)


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:45 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz