Ridimensionare un form e i suoi controlli

di il
2 risposte

Ridimensionare un form e i suoi controlli

Buongiorno a tutti,
Sto cercando di fare un software da utilizzare nei miei due pc, Il mio problema e che i due pc hanno risoluzione e dimensioni diverse, e quando vado a ridimensionare il form tutti i controlli o cambiano posizione, o si "deformano".
Ho provato a usare un codice per evitare ciò e in piu ancoro tutti ii controlli a sinistra e in alto al form, ma il risultato cambia parzialmente.
  
  
   Dim Curwidth As Integer = Me.Width
    Dim Curheight As Integer = Me.Height
  Private Sub form1_Resize(sender As Object, e As EventArgs) Handles Me.Resize
        Dim RaitoHeight As Double = (Me.Height - Curheight) / Curheight
        Dim RaitoWidth As Double = (Me.Width - Curwidth) / Curwidth

        For Each Ctrl As Control In Controls
            Ctrl.Width += Ctrl.Width * RaitoWidth
            Ctrl.Left += Ctrl.Left * RaitoWidth
            Ctrl.Top += Ctrl.Top * RaitoHeight
            Ctrl.Height += Ctrl.Height * RaitoHeight
        Next

        Curheight = Me.Height
        Curwidth = Me.Width

    End Sub
    

2 Risposte

  • Re: Ridimensionare un form e i suoi controlli

    Devi usare nel modo consono la proprietà Dock dei controlli per allinearli automaticamente alla finestra.

    Leggi questo articolo.
  • Re: Ridimensionare un form e i suoi controlli

    Che intendi per diverse misure, hai un 4:3 e un 16:9 o cosa? perchè se hai entrambi 16:9 io userei un form 1200:700 e ancorerei gli oggetti con autosize = False se la differenza è poca hai risolto, se invece hai necessità di adattare tutto devi far prendere a vb le dimensioni altezza e larchezza schermo e adatti il form con autosize. Io almeno faccio così. in alcuni casi ho tolto il "bordo" della form e quindi si allarga automaticamente poi ancori tutto ovviamente.
Devi accedere o registrarti per scrivere nel forum
2 risposte