Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 33
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    185

    [VB.net] Richiamare array definita in un modulo, dove sbaglio?

    Ho un modulo così definito:

    codice:
    Module Matrice_CV
        Public ArrTxt(1) As TextBox
        Sub Matrix(ByVal ArrTxt)
            ArrTxt(0) = MioForm.comune
            ArrTxt(1) = MioForm.lavori
        End Sub
    End Module

    Dal Form "MioForm" voglio richiamare quell'array ed uso una cosa tipo:

    codice:
    ArrTxt(0).Text = "Milano"
    ArrTxt(1).Text = "Costrizione"
    Ma i relativi TextBox (comune e lavori) non vengono riempiti.

    Dove sbaglio?

  2. #2
    certo che non va... finche ti dichiari la variabile pubblica e gliela passi come argomento alla sub Matrix non andrà mai... io farei così:

    codice:
    Module Matrice_CV
        Public ArrTxt(1) As TextBox
        Sub Matrix()
            ArrTxt(0) = MioForm.comune
            ArrTxt(1) = MioForm.lavori
        End Sub
    End Module
    ricordati che una variabile pubblica, tranne in casi estremi, non va mai passata come argomento alle sub... va solo usata e basta...
    Bombardare per la pace, è come trombare per la verginità.

    C'è qualcuno al mondo che tromba troppo secondo me...

    Andrea Medici

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    185
    [QUOTE]Originariamente inviato da andreaciao_22
    certo che non va... finche ti dichiari la variabile pubblica e gliela passi come argomento alla sub Matrix non andrà mai... io farei così:

    codice:
    Module Matrice_CV
        Public ArrTxt(1) As TextBox
        Sub Matrix()
            ArrTxt(0) = MioForm.comune
            ArrTxt(1) = MioForm.lavori
        End Sub
    End Module
    ricordati che una variabile pubblica, tranne in casi estremi, non va mai passata come argomento alle sub... va solo usata e basta... [/QUOTE

    Ti ringrazio per la risposta ma non va. Ho provato come hai detto tu ma nulla.

    L'unico dubbio che mi viene è se nel form MioForm oltre che richiamare l'array con un semplice ArrTxt(1).Text = "..." devo mettere altre istruzioni...

  4. #4
    io ho fatto così e funziona:

    form:

    codice:
    Public Class MioForm
    
        Private Sub comune_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles comune.TextChanged
            ArrTxt(0).Text = comune.Text
        End Sub
    
        Private Sub lavori_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles lavori.TextChanged
            ArrTxt(1).Text = lavori.Text
        End Sub
    
        Private Sub MioForm_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            Call Matrix()
        End Sub
    End Class
    modulo:

    codice:
    Module Matrice_CV
        Public ArrTxt(1) As TextBox
        Sub Matrix()
            ArrTxt(0) = MioForm.comune
            ArrTxt(1) = MioForm.lavori
        End Sub
    End Module
    postami il tuo codice
    Bombardare per la pace, è come trombare per la verginità.

    C'è qualcuno al mondo che tromba troppo secondo me...

    Andrea Medici

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    185
    Grazie della disponibiltà.

    Il codice del modulo è quello già postato:
    codice:
    Module Matrice_CV
        Public ArrTxt(1) As TextBox
        Sub Matrix()
            ArrTxt(0) = MioForm.comune
            ArrTxt(1) = MioForm.lavori
        End Sub
    End Module
    Poi ho un form MioForm (che contiene 2 textbox chiamate "comune" e "lavori") dove, associato al click di un button ho:

    codice:
    Private Sub Mostra_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Mostra.Click
            
    ArrTxt(0).Text = "Milano"
    ArrTxt(1).Text = "Costrizione"
    
     End Sub
    Se clicco sul button, il debug punta a ArrTxt(0).Text = "Milano" con un errore: "NullReferenceException was unhandled

    Non ho altro codice.

  6. #6
    la sub Matrix dove la richiami?
    Bombardare per la pace, è come trombare per la verginità.

    C'è qualcuno al mondo che tromba troppo secondo me...

    Andrea Medici

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    185
    Originariamente inviato da andreaciao_22
    la sub Matrix dove la richiami?
    Ho provato così:

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Matrix()
    ArrTxt(0).Text = "Milano"
    ArrTxt(1).Text = "Costrizione"
    End Sub

    Nessun errore, ma neanche nessun risultato! :-(

  8. #8
    sorry for the question but: "perchè devi farti le seghe mentali salvandoti i textbox nell'array???"...

    io farei semplicemente:

    codice:
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    comune.text = "Milano"
    lavori.text = "Costrizione"
    End Sub
    comunque, se vuoi, contattami via mail così vedo il tuo progetto per intero e lo sistemiamo assieme
    Bombardare per la pace, è come trombare per la verginità.

    C'è qualcuno al mondo che tromba troppo secondo me...

    Andrea Medici

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    185
    Originariamente inviato da andreaciao_22
    sorry for the question but: "perchè devi farti le seghe mentali salvandoti i textbox nell'array???"...

    io farei semplicemente:

    codice:
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    comune.text = "Milano"
    lavori.text = "Costrizione"
    End Sub
    comunque, se vuoi, contattami via mail così vedo il tuo progetto per intero e lo sistemiamo assieme
    Troppo gentile, grazie, non vorrei approfittare, anche perchè sono 2 righe di codice scritte pure male...

    Comunque ho notato una cosa:
    - in un form nuovo, dello stesso progetto, non funziona ma...
    - in un progetto ex-novo funziona! :-(

    L'unica cosa è che il nuovo form nel progetto esistente, che non funziona, è richiamato da un menustrip.

    Ho optato per questa soluzione perchè quell'array (che conterrà circa 60 elementi) dovro' richiamarla una decina di volte da più parti dell'applicazione e pensavo che metterla in un modulo e richiamarla da li fosse la soluzione migliore...

  10. #10
    non approfitti, tranquillo... contattami pure...
    Bombardare per la pace, è come trombare per la verginità.

    C'è qualcuno al mondo che tromba troppo secondo me...

    Andrea Medici

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.