Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291

    VB6 - Applicazione MDI.

    Vorrei sottoporre alla vs. attenzione una particolarità che ho riscontrato nell'applicazione che sto scrivendo.
    Si tratta dell'altezza che assume il Frm padre MDI.
    Il fatto:
    Devo tenere in memoria 3 Frm figli di diverse altezze (nascosti con il metodo Hide), quando carico il 4° Frm mi sono accorto che la barra di scorrimento verticale del Frm padre può scorrere oltre l'altezza del predetto 4° Frm, al momento visualizzato. In effetti i Frm sottostanti non sono sovrapposti, bensì sono ordinati uno dopo l'altro (o circa). Pertanto la barra di scorrimento, volendo, li può evidenziare anche se non sono attivi.
    Vorrei che ciò non avvenisse, in altri termini vorrei che la barra verticale potesse scorrere solo per l'altezza del Frm visualizzato.
    E' possibile, o viceversa quella descritta è una caratteristica di VB6.
    Grazie per l'aiuto.
    LM

  2. #2
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Ma, non è possibile che nessuno abbia incontrato questa difficoltà. Forse non sono stato chiaro nell'esposizione.
    In sostanza si tratta di far assumere al FrmMain la stessa altezza dell'ultimo Frm attivo (visualizzato) dato che la larghezza è uguali per tutti i Frm, anche se vi sono nascosti altri Frm con altezze diverse.
    Si può fare ?
    LM

  3. #3
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    avevo postato una soluziona ma mi sembra sia improbabile che funzioni anche perchè non riesco a modificare l'altezza del form principale da un altro form
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  4. #4
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    A chi dovesse interessare.
    Il Frm padre MDI può essere dimensionato con le misure del Frm figlio che si visualizza, facendo sì che allo scorrere del Frm visualizzato non venga scoperto il Frm sottostante (nascosto con Hide)che inizialmente aveva dimensionato il Frm padre MDI.
    Per fare ciò si deve settare prima di tutto frmMain.WindowState = 0, in modo che non si generi un errore; poi si riduce ad icona il Frm nascosto con, ad esempio: FrmProva1.WindowState = 1 e successivamente si carica il nuovo Frm:
    codice:
     
    Private Sub Form_Activate() (Nel modulo del Frm da visualizzare)
    If frmMain.WindowState = vbNormal Then 
            frmMain.Height = 11520  'dimensioni del Frm da visualizzare
            frmMain.Width = 15360   'dimensioni del Frm da visualizzare
            frmMain.WindowState = 2 'massimizza il Frm
    End If
    End Sub
    La procedura, ancora da ottimizzare, va ripetuta per ciascuno dei Frm se hanno dimensioni tra loro diverse. Ciò evita che allo scorrere della barra verticale si scopra un Frm non attivo (sottostante)che potrebbe generare confusione nell'operare dell'utente finale.
    LM

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 © 2026 vBulletin Solutions, Inc. All rights reserved.