Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [VB6] From MDI & Child

  1. #1

    [VB6] From MDI & Child

    Salve a tutti, ho un piccolo prob. , fra l'altro banale, che mi sta facendo impazzire da due giorni.
    Ho un progettino in VB6 con un form MDI e un child. Quando visualizzo il form child le sue dimensioni non sono corrette, il form è sempre più largo e più alto rispetto al disegno che ho nell'ide. Ho provato a forza width e height da codice impostandoli al valore preso dalle proprietà del form ma in questo caso il form viene disegnato più piccolo.
    Qualcuno ha qualche suggerimento?

  2. #2
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244

    Re: [VB6] From MDI & Child

    Originariamente inviato da macaiver
    Salve a tutti, ho un piccolo prob. , fra l'altro banale, che mi sta facendo impazzire da due giorni.
    Allora non è poi così tanto banale...

    Originariamente inviato da macaiver
    Ho un progettino in VB6 con un form MDI e un child. Quando visualizzo il form child le sue dimensioni non sono corrette, il form è sempre più largo e più alto rispetto al disegno che ho nell'ide.
    Questo è il comportamento standard di Windows: il form Child viene dimensionato in base ad una predefinita proporzione rispetto al dimensione del form MDI padre.

    Originariamente inviato da macaiver
    Ho provato a forza width e height da codice impostandoli al valore preso dalle proprietà del form ma in questo caso il form viene disegnato più piccolo.
    Qualcuno ha qualche suggerimento?
    Puoi impostare la dimensione negli eventi Form_Load() e Form_Activate().
    Non usare l'evento Form_Resize o Form_Paint perchè potresti entrare in un loop infinito che ti impalla il programma.


  3. #3
    Prova già fatta.

    Purttroppo il risultato non è quello aspettato, la larghezza della form èmolto più vicina all'originale, quella che non si imposta correttamente è l'altezza.

  4. #4

  5. #5
    il codice è semplicissimo.


    Private Const MIN_WIDTHS = 9945 'reale proprietà della form 9810
    Private Const MIN_HEIGHTS = 5460 'reale proprietà della form 5760

    .....


    Private Sub Form_Load()

    'Me.Move 0, 0, MIN_WIDTHS, MIN_HEIGHTS 'I RISULTATI SONO GLI STESSI
    Me.Height = MIN_HEIGHTS
    Me.Width = MIN_WIDTHS

    End Sub

  6. #6
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Io ho provato così, e funziona perfettamente.

    form CHILD
    codice:
    Private Const MIN_WIDTHS = 9945 'reale proprietà della form 9810
    Private Const MIN_HEIGHTS = 5460 'reale proprietà della form 5760
    
    Private Sub Form_Activate()
        Cls
        
        Print "W: Default=" & MIN_WIDTHS, "Current=" & Me.Width
        Print "H: Default=" & MIN_HEIGHTS, "Current=" & Me.Height
        
    End Sub
    
    Private Sub Form_Load()
        Me.Height = MIN_HEIGHTS
        Me.Width = MIN_WIDTHS
    End Sub
    Quando scrivi nei commenti:
    'reale proprietà della form 9810
    'reale proprietà della form 5760
    Immagino tu intendi dire che quelle sono le reali dimensioni del form, allora mi chiedo:
    Cosa c'entra questo?
    Tu puoi mettere le dimensioni reali che vuoi, es. 2000x3000, ma nel momento che le modifichi a run-time quelle non hanno più alcuna rilevanza.

    Ho fatto questa prova, e te la indico affinchè possa fara anche tu:
    1. imposta MIN_HEIGHTS=5760 e MIN_WIDTHS=9810, ovvero alle dimensioni reali
    2. nel form Child aggiungi uno Shape (Shape1)
    3. imposta lo Shape1 con BorderWidth=2, BorderColor = &H000000FF& (rosso)
    4. dimensiona Shape1 in modo che sia largo esattamente l'area client del form
    per cui avrà Width=9675 e Height=5235

    Ora avvia il progetto ed apri il form Child.
    Vedrai che lo Shape1 è perfettamente visibile come a design-time, significa che il form Child ha la stessa dimensione che aveva a design-time.


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.