MDI-Child Größenberechnung mit VCL

CSANecromancer

Erfahrenes Mitglied
Folgendes kleines Problemchen:

Ich habe eine MDI-Anwedung. Da recht viel mit den MDI-Childs umeinander gebastelt wird, habe ich erst das Problem gehabt, daß eine Maximierung eines MDI-Childs mir nicht mehr so recht das gewünschte Resultat bringt. Exakter: In der Titelleiste der MDI-Childs stehen Strings mit den Namen der jeweiligen MDI-Childs. Bei einem Maximize verschwinden diese Titelleisten und auch weitere Dinge gehen nicht mehr so rund.
Also bin ich hergegangen und habe im TForm der MDI-Child das Border Icon für Maximize auf false gesetzt. Damit aber die MDI-Childs doch irgendwie "maximiert" werden können, dachte ich mir nun Folgendes:

Durch einen Doppelklick auf das MDI-Child werden dessen Eigenschaften Top, Left, Width und Height passend gesetzt, so daß das MDI-Child komplett den gesamten Clientbereich des Hauptfensters ausfüllt. Die Routine funktioniert auch so weit sehr zufriedenstellend:

fmMain: Hauptformular.
TfmPicture: MDI-Child Formular

Design von fmMain sieht ungefähr so aus:
+--------------------------------------------------------------------------------
| Hauptmenü
+--------------------------------------------------------------------------------
| atbMain (Toolbar)
+--------------------------------------------------------------------------------
| atbSub (Toolbar)
+--------------------------------------------------------------------------------
|
| Clientbereich
|
|
|
|
|
|
+--------------------------------------------------------------------------------
| StatusBar
+--------------------------------------------------------------------------------

Code:
procedure TfmPicture.imPictureDblClick(Sender: TObject);
begin
  Top := 0;
  Left := 0;
  Width := fmMain.ClientWidth - 4;
  Height := fmMain.StatusBar.Top - (fmMain.atbSub.Top + fmMain.atbSub.Height) - 4;
end;

Was mich an der ganzen Sache stört, sind die festcodierten -4 sowohl bei der Höhe als auch der Breite. Wenn ich das richtig verstehe, dann sind das jeweils 2 Pixel Breite von irgendeinem Bevel, entweder vom fmMain oder vom TfmPicture.
Und hier die Quizfrage:

Kann ich die -4 durch irgendeine vernünftige Bevel-Abfrage ersetzen?

Ich habe schon ziemlich gesucht, aber einfach nichts Vernünftiges dazu gefunden.
 
Zurück