Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    56

    [Vb.net] Menù a tendina per aprire altri form

    Io ho inserito un menù a tendina in un programma ma ora vorrei che cliccando su una opzioni si apra un nuovo form e automaticamente si chiuda l'altro, come posso fare?
    Mi spiego meglio. Creo ad esempio una calcolatrice e nel menu metto Normale e Scientifica. Ora uno selezionando normale si apre il form di quella appunto, ma se poi seleziona scientifica si apre questa o meglio sostituisce quella che c'è già. Come la calcolatrice di Windows.

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Ma io farei così:

    codice:
     Me.Visible = False
     Form2.ShowDialog()
     Me.Visible = True
    Sbagliare è umano, perseverare è diabolico.

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    56
    Quindi in pratica nel primo form ( Esempio calcolatrice Normale ) cosa devo mettere? O meglio questo codice dove lo devo inserire?

    Facciamo un esempio:

    Ho il menu con "File-> Scientifica e Normale" E "About"

    Ora questi vorrei aprirli con tre form diversi, come e dove dovrei copiare il codice?

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Visto che hai preso l'esempio della calcolatrice di Windows, nell'evento click del menù Scentifica (diciamo Form1) ci metti il codice sopra riportato, e nel menu Standard sul Form2 ci metti:

    codice:
    Me.close

    Chiaramente ad esempio nella vera calcolatrice di Windows si memorizza anche l'ultimo tipo di calcolatrice usato.........ma questa è un'altra cosa.
    Sbagliare è umano, perseverare è diabolico.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    56
    Grazie funziona! Però ho notato che: Ho fatto due form chiamandoli uno Normale e uno Scientifica.
    Allora ho messo il codice come mi hai detto in modo che funzionasse infatti quando sono in scientifica metto su normale e mi ci va e viceversa, ma se faccio il processo per più di una volta mi va in errore la funzione ShowDialog.
    Mentre se clicco su Scientifica, dove mi trovo già il form si chiude in tutto, come posso ovviare a questi due problemi?

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Stai sbagliando. Su tutti e due le Form nel menù c'è la voce Normale e scentifica ma chiaramente sulla Form 'Scentifica' alla voce 'Scentifica nel menu (sull'evento Click) non dovrai mettere ancora il .ShowDialog perche ci sei già.
    In patica:

    codice:
    Public Class Normale
    
        Private Sub ScentificaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ScentificaToolStripMenuItem.Click
            Me.Visible = False
            Scentifica.ShowDialog()
            Me.Visible = True
        End Sub
    
        Private Sub ScientificaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ScientificaToolStripMenuItem.Click
    
        End Sub
    End Class
    
    Public Class Scentifica
    
        Private Sub ScientificaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ScientificaToolStripMenuItem.Click
            Me.Close()
        End Sub
    
        Private Sub ScentificaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ScentificaToolStripMenuItem.Click
    
        End Sub
    End Class
    Sbagliare è umano, perseverare è diabolico.

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    56
    Si in effetti avevo sbagliato a mettere il codice ma ho risolto in un altro modo.
    Nei due form ho inserito il ShowDialog che va all'altro mentre a quello corrispondente non fa succedere nulla in modo che non si chiuda o altro.

    Grazie

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.