|
VB.Net-Forum - Beitragsübersicht - |
|
Thema | V13: Dialoggrösse dynamisch anpassen |
Von |
michi |
Datum |
07. März 2018 um 09:00:25 |
Frage |
Ich suche seit einiger Zeit warum bei der danmaischen Dialoggrössenanpassung ein von mir gesetztes Label nicht vollständig angezeigt wird. Ich verwende Win10 und sehe dass das Dialog im Designer ein Rand angezeigt wird der bei Win 10 nicht dargestellt wird. Dieser Rand ist die Ursache meines Übels.
Ich baue im Designer ein Diloag der 100 Pixel in Y hat. Dann lege ich ein Label der ebenfalls 100 Pixel in Y hat.
Zum Code: (Im Dialog) label.Left = 0
Und ich sehe dass das Label obwohl er die gleiche Breite wie Dialog hat nicht vollständig angezeigt wird. Somit denke ich ich müsste an der Stelle so etwas tun wie:
(Me = Dialog) Me.Width = label.Width + 2 * (Ramenbreite)
Oder gibt es da geschitere Lösung?
Könntet ihr mir da weiterhelfen?
Danke im Voraus |
|
Antwort: |
Von |
michi |
Datum |
07. März 2018 um 09:39:36 |
Antwort |
- dynamische Dialoggrössenänderung bedeutet dass ich zur Laufzeit die Grösse ändern muss, je nach dem wie der Inhalt meiner Daten an das Dialog übergeben werden - ein Dialog ist bei mir ein Form mit FormBorderStyle = FixedDialog - um festzustellen dass etwas mit dem Dialog nicht übereinstimmt habe ich versucht herauszufinden woran es liegt, dazu war für mich das einfachste ein Label in einem Dialog auf gleiche Breite zu setzten und das Label am Y=0 zu legen. Nach dem starten sehe ich dass das Label nicht vollständig angezeigt wird. Ich sshe bereits im Designer dass obwohl das Dialog als auch Label die gleiche breite hat, das Label aus dem Dilog herausragt. (wegen den Rahmen was bei Win 10 zur Laufzeit nicht nagezeigt wird) - Im dem Label im designer habe ich den Inhalt mit "1234567890 usw. belegt. Zur Laufzeit sehe ich jedoch dass z.b. nach der 8 der Dialog zu ende ist
Der Hintergrund ist folgender: Ursprünglich stehen in Dialog 4 Labels. Je nachdem wie meine Daten des Dialogs stehen soll sich der Dialog verkleinern. D.h. Wenn die Daten z.B. eine Zahl 3 beinhalten so soll der Dialog auf 3 Lables mit der Breite reduziert werden. Dabei wird der Label 4 auf Visible = false gesetzt und Dialog Breite durch einfaches:
Me.Width = Label3.Right
gestezt. Dieses reicht aber nicht da wie gesagt der label3 abgeschnitten ist. |
|
[ Antwort schreiben | Zurück zum VB.Net-Forum | Forum-Hilfe ] |
|
Letzte Aktualisierung: Sonntag, 13. Dezember 2015 |
|