Frage : Gibt es eine schnelle Weise, Formen und Kontrollen die Größe neu zu bestimmen?!

Wir lassen eine grosse Software bilden in WinForm VB 2008 entworfen mit Formen 1280X1024. Vorhergehende Version unserer Software arbeitete an Schirmen 1024X768. Jetzt verbessern wir jene Klienten mit der neueren Version, aber das mit Berührungseingabe Bildschirm (es ist ein eingebetteter industrieller Computer), stützt Entschließung nicht 1280X1024 (es ist etwas, das wir ganz verfehlten, bevor wir grünen Licht für das Aufsteigen gaben). So müssen wir alle Formen und Kontrollen und Abstand zwischen jedem die Größe neu bestimmen Kontrollen, um die Schnittstelle 1280 in 1024.

We zu passen entschieden, um eine neue Version und eine Kopie/eine Paste zu bilden alle Steuerung und die ganzen Sachen zu kodieren und manuell die Größe neu zu bestimmen (es gibt viele Formen und Kontrollen…) welches sehr viel Zeit nimmt. Ideal sollten wir eine einzelne Version haben, die beide Beschlüsse stützen, da Wartung beider Versionen schnell wird, haben ein nightmare.

Anyone eine Idee von, wie wir Formen und Kontrollen automatisch die Größe neu bestimmen könnten, Abhängen der Entschließung? Die beste Entschließung der grafischen Karte zu erhalten ist nicht ein Problem, ist es das Die Größe neu bestimmen der Formen und Kontrollen, die uns Kopfschmerzen…

thanks für Ihre Zeit und help
geben

Antwort : Gibt es eine schnelle Weise, Formen und Kontrollen die Größe neu zu bestimmen?!

Ich gebildet immer meine Kontrollen re-sizable zu jeder möglicher Entschließung einfach, indem ich das form_resize Ereignis einführte. Anstatt, örtlich festgelegte Positionen zu verwenden, sie in diesem Ereignis berechnen. Oberseite, Breite, Höhe, usw.-konstante Werte nicht zuweisen - eine Reihe der Formel verwenden, um zu berechnen, wie viel Raum vorhanden ist und was ihre jeweiligen Positionen relative to sein sollten.

Es dauert einer wenig Bemühung dieses erste Mal, da Sie den UI Plan überholen, aber nachher das müssen Sie nie um Entschließungprobleme wieder sorgen.

Ich angebracht ein Beispiel.

--
Alain
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
6:
37:
38:
Const ListboxPadding = 1
Const ButtonPadding = 3
Const MinHeight = 100
Const MinWidth = 520

Privates VorUserForm_Resize ()
    Mit ButtonSearchBasic
        . Oberseite = Me.InsideHeight - ButtonPadding * 2 -. Höhe
    Ende mit
    Mit ButtonSearch1
        . Oberseite = Me.InsideHeight - ButtonPadding * 2 -. Höhe
    Ende mit
    Mit ButtonSearch2
        . Oberseite = Me.InsideHeight - ButtonPadding * 2 -. Höhe
    Ende mit
    Mit ButtonExit
        . Oberseite = Me.InsideHeight - ButtonPadding -. Höhe
        . Links = Me.InsideWidth - ButtonPadding -. Breite
    Ende mit
    Mit ButtonFillOverwrite
        . Oberseite = Me.InsideHeight - ButtonPadding -. Höhe
        . Links = Me.InsideWidth - ButtonPadding * 4 -. Breite - ButtonExit.Width
    Ende mit
    Mit ButtonFillEmpty
        . Oberseite = Me.InsideHeight - ButtonPadding -. Höhe
        . Links = Me.InsideWidth - ButtonPadding * 6 -. Breite - ButtonFillOverwrite.Width - ButtonExit.Width
    Ende mit
    Mit ResizeGrab
        . Links = Me.InsideWidth -. Breite
        . Oberseite = Me.InsideHeight -. Höhe
    Ende mit
    Mit ResultList
        . Oberseite = ListboxPadding
        . Links = ListboxPadding
        . Höhe = Me.InsideHeight - 2 * ButtonPadding - ButtonExit.Height -. Oberseite
        . Breite = Me.InsideWidth -. Link - ListboxPadding
    Ende mit
Enden-Unterseeboot
Weitere Lösungen  
 
programming4us programming4us