Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [VB6] Apertura form dinamica

    Ciao,
    ho creato un menù con una listView i cui valori sono caricati da una tabella del database.

    Il mio problema è come associare all'evento doppio-click l'apertura del form caricato in un SubItems della ListView.

    io ho provato con questo codice, ma evidentemente mi manca qualcosa visto che va in errore...
    Dim frm As Form

    frm = LWAction.SelectedItem.ListSubItems(1).Text
    frm.Show
    qualcuno mi sa aiutare?

  2. #2
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Se frm è un oggetto di tipo Form non puoi pretendere che si apra indicano una stringa.
    Il tuo codice non ha senso...


  3. #3
    sono d'accordo con te Gibra, ma speravo in un aiuto o un suggerimento su come fare, non in una conferma che fosse sbagliato.

  4. #4
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Originariamente inviato da antocasi
    sono d'accordo con te Gibra, ma speravo in un aiuto o un suggerimento su come fare, non in una conferma che fosse sbagliato.
    E che aiuto ti si può dare, se concettualmente il tuo approccio è completamente assurdo?

    Il mio problema è come associare all'evento doppio-click l'apertura del form caricato in un SubItems della ListView.
    Supporre di aver "caricato un form in un subitem" è incomprensibile...

    Se non spieghi lo scenario, cosa vuoi fare, perchè e che risultato ti aspetti non è che possiamo indovinarlo da soli.

    Ti pare?


  5. #5
    ok, rispiego il mio problema
    FrmMain è il menù principale della mia applicazione e contiene una ListView, caricata da database, con le possibili azioni previste. Facendo doppio-click su ciascuna linea viene richiamato un particolare form.

    La listview è caricata così:
    codice:
            Do While Not rs1.EOF
                i = i + 1
                Set LWItem = LWAction.ListItems.Add(, Trim(rs1("ID_ACTION")), Trim(rs1("ACTION_NAME")), , 1)
                Set LWSubItem = LWAction.ListItems(i).ListSubItems.Add(, , rs1("FORM_NAME"))
                rs1.MoveNext
            Loop

    E questo è il codice legato all'evento doppio-click sulle linee della listview
    codice:
        Select Case LWAction.SelectedItem.Key
            Case "a1"
                FrmElencoFerie.Show
            Case "a2"
                frmImpExp.Show
            Case "a3"
                FrmStampaCalendario.Show
    Io vorrei cambiare questa seconda parte del codice in maniera tale da richiamare il Form che c'è scritto nel SubItems della ListView, solo che non so come rendere dinamico il nome del form da aprire.

    Spero adesso di essere stato chiaro

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

    Il tuo codice è la sola via praticabile. Va bene così.


  7. #7
    grazie, allora non ci perdo più tempo.

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.