Ganymed Geschrieben 26. September 2002 Geschrieben 26. September 2002 Hallo. Ich hoffe dass ich hier Hilfe finde. Ich bin schon ganz verzweifelt. Mein Programm (besser ein Formular) soll über das Resize-Ereignis veränderbar sein. Es ist etwas schwer zu beschreiben, was auf dem Formular zu sehen ist, aber ich versuche es trotzdem: Das Formular ist Height: 8000 und Width: 7250 groß. Darauf sind 3 MSHFlexGrids platziert. Sie haben folgende Größen: 1: Height 1935, Width 6615, Left 240, Top 840 2: Height 1095, Width 6615, Left 240, Top 3240 3: Height 1935, Width 6615, Left 360, Top 5520 Jetzt soll ich den Prozentualen Anteil berechnen, den jedes Grid im Formular einimmt, um so herausfinden zu können, wie ich das ganze beim verändern der Größe skalieren muss. WIE GEHT DAS???? Das muss doch mit diesen Daten gehen, oder? Ich bräuchte dazu ein Rechenbeispiel. Das wär ersteinmal ein Teilproblem. Hoffe es kann mir jemand Helfen. Gruß Gany Zitieren
Ganymed Geschrieben 26. September 2002 Autor Geschrieben 26. September 2002 Ach ja, habe noch was vergessen: Die Grids (und weitere Steuerelemente) sollen immer den gleichen Abstand haben! Gruß Gany Zitieren
Leominora Geschrieben 26. September 2002 Geschrieben 26. September 2002 Du brauchst die Höhe von deinem Formular. Zum Beispiel lFenstergroesse Dann gibst du nicht den Top-Wert mit 120 an sondern immer in Bezug auf das höherliegende Tool. Zum Beispiel du hast oben ein Label und eine Textbox. Die kannst du so lassen, weil die ja immer oben sind. Dann folgt ein Grid. Da musst du dich entscheiden, in welchem Verhältnis das vergrößert werden soll. Enweder du nimmst dir eine Varable zur Hilfe der alten Größe und berechnest dann das Verhältnis zur neuen Größe, oder du sagst gleich, es ist ein viertel der Festergröße. Private lFenstergroesse as long Private Form_Load() lFenstergroesse = me.height End Sub Private form_resize() 'Variante 1 Grid.Height = Grid.Height * Me.Height / lFenstergroesse lFenstergroesse = Me.Height 'Variante 2 Grid.Height = Me.Height / 4 End Sub Dann folgt ein TextFeld, dessen Top du mit Grid.Top + Grid.Height + x angeben musst. Dann noch ein Grid, dessen Top = Textfeld.Top + Textfeld.Height + x ist. Und dessen Höhe so wie beim ersten berechnet wird. Und so weiter und so weiter... Alles eine Sache des Ausprobierens, da wirst du nicht drumherum kommen. (Mir macht das immer Spaß!) Bei weiteren Fragen, einfach posten! :bimei :bimei Zitieren
Ganymed Geschrieben 26. September 2002 Autor Geschrieben 26. September 2002 Hui, ist das kompliziert! Hmmm... Naja ich versuchs mal. Danke! Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.