Problemi con Tabcontrol

di il
5 risposte

Problemi con Tabcontrol

Ho un form con un centinaio di texbox destinati a contenere calcoli semplicissimi.
Data la numerosità delle textbox ho utilizzato un tabcontrol con due tabpage.
I calcoli -e veniamo al problema- vengono effettuati richiamando una sub, ma il caso strano è che sul primo record (e solo sul primo!!) i calcoli non vengono effettuati (o visualizzati?) sulla seconda tabpage. Ho messo un button che richiama la sub ed i calcoli vengono eseguiti normalmente.
Qualcuno sa dirmi dove sbaglio?

5 Risposte

  • Re: Problemi con Tabcontrol

    Se non mostri il codice come si fa a trovare l'errore ?
  • Re: Problemi con Tabcontrol

    Grazie per l'interessamento.Non ho pubblicato il codice perché poco significativo rispetto al problema: perché cioè i calcoli non vengono eseguiti sulla seconda pagina del Tabcontrol.

    Ecco comunque il codice :
    Sub calcolaPunti()
    'SEZ.A-TABPAGE1
    P_A_GR1_1.Text = Val(A_GR1_1TextBox.Text) * 6
    P_A_GR1_2.Text = Val(A_GR1_2TextBox.Text) * 6
    P_A_GR1_GP.Text = Val(A_GR1_GPTextBox.Text) * 6
    P_A_GR2_3.Text = Val(A_GR2_3TextBox.Text) * 4
    P_A_GR2_4.Text = Val(A_GR2_4TextBox.Text) * 4
    P_A_GR2_5.Text = Val(A_GR2_5TextBox.Text) * 4
    P_A_GR2_6.Text = Val(A_GR2_6TextBox.Text) * 4
    P_A_GR2_GP.Text = Val(A_GR2_GPTextBox.Text) * 4

    P_A_GR3_7.Text = Val(A_GR3_7TextBox.Text) * 2
    P_A_GR3_8.Text = Val(A_GR3_8TextBox.Text) * 2
    P_A_GR3_GP.Text = Val(A_GR3_GPTextBox.Text) * 2

    P_A_AG_M.Text = Val(A_AG_MTextBox.Text) * 20
    P_A_AG_L.Text = Val(A_AG_LTextBox.Text) * 30

    A_TOT_PRAT.Text = Val(A_GR1_1TextBox.Text) + Val(A_GR1_2TextBox.Text) + Val(A_GR1_GPTextBox.Text) + Val(A_GR2_3TextBox.Text) + Val(A_GR2_4TextBox.Text) + Val(A_GR2_5TextBox.Text) + Val(A_GR2_6TextBox.Text) + Val(A_GR2_GPTextBox.Text) + Val(A_GR3_7TextBox.Text) + Val(A_GR3_8TextBox.Text) + Val(A_GR3_GPTextBox.Text) + Val(A_AG_MTextBox.Text) + Val(A_AG_LTextBox.Text)
    P_A_TOT_PUNTI.Text = Val(P_A_GR1_1.Text) + Val(P_A_GR1_2.Text) + Val(P_A_GR1_GP.Text) + Val(P_A_GR2_3.Text) + Val(P_A_GR2_4.Text) + Val(P_A_GR2_5.Text) + Val(P_A_GR2_6.Text) + Val(P_A_GR2_GP.Text) + Val(P_A_GR3_7.Text) + Val(P_A_GR3_8.Text) + Val(P_A_GR3_GP.Text) + Val(P_A_AG_M.Text) + Val(P_A_AG_L.Text)

    'SEZ.B
    P_B_GR1_1.Text = Val(B_GR1_1TextBox.Text) * 6
    P_B_GR1_2.Text = Val(B_GR1_2TextBox.Text) * 6
    P_B_GR1_3.Text = Val(B_GR1_3TextBox.Text) * 6
    P_B_GR1_GP.Text = Val(B_GR1_GPTextBox.Text) * 6

    P_B_GR2_4.Text = Val(B_GR2_4TextBox.Text) * 4
    P_B_GR2_5.Text = Val(B_GR2_5TextBox.Text) * 4
    P_B_GR2_GP.Text = Val(B_GR2_GPTextBox.Text) * 4

    P_B_GR3_6.Text = Val(B_GR3_6TextBox.Text) * 2
    P_B_GR3_7.Text = Val(B_GR3_7TextBox.Text) * 2
    P_B_GR3_GP.Text = Val(B_GR3_GPTextBox.Text) * 2

    P_B_AG_M.Text = Val(B_AG_MTextBox.Text) * 20
    P_B_AG_L.Text = Val(B_AG_LTextBox.Text) * 30

    B_TOT_PRAT.Text = Val(B_GR1_1TextBox.Text) + Val(B_GR1_2TextBox.Text) + Val(B_GR1_3TextBox.Text) + Val(B_GR1_GPTextBox.Text) + Val(B_GR2_4TextBox.Text) + Val(B_GR2_5TextBox.Text) + Val(B_GR2_GPTextBox.Text) + Val(B_GR3_6TextBox.Text) + Val(B_GR3_7TextBox.Text) + Val(B_GR3_GPTextBox.Text) + Val(B_AG_MTextBox.Text) + Val(B_AG_LTextBox.Text)
    P_B_TOT_PUNTI.Text = Val(P_B_GR1_1.Text) + Val(P_B_GR1_2.Text) + Val(P_B_GR1_3.Text) + Val(P_B_GR1_GP.Text) + Val(P_B_GR2_4.Text) + Val(P_B_GR2_5.Text) + Val(P_B_GR2_GP.Text) + Val(P_B_GR3_6.Text) + Val(P_B_GR3_7.Text) + Val(P_B_GR3_GP.Text) + Val(P_B_AG_M.Text) + Val(P_B_AG_L.Text)

    'SEZ.C
    P_C_GR1_1.Text = Val(C_GR1_1TextBox.Text) * 6
    P_C_GR1_2.Text = Val(C_GR1_2TextBox.Text) * 6
    P_C_GR1_3.Text = Val(C_GR1_3TextBox.Text) * 6
    P_C_GR1_GP.Text = Val(C_GR1_GPTextBox.Text) * 6

    P_C_GR2_4.Text = Val(C_GR2_4TextBox.Text) * 3
    P_C_GR2_5.Text = Val(C_GR2_5TextBox.Text) * 3
    P_C_GR2_6.Text = Val(C_GR2_6TextBox.Text) * 3
    P_C_GR2_GP.Text = Val(C_GR2_GPTextBox.Text) * 3

    P_C_GR3_7.Text = Val(C_GR3_7TextBox.Text) * 1

    P_C_AG_M.Text = Val(C_AG_MTextBox.Text) * 20
    P_C_AG_L.Text = Val(C_AG_LTextBox.Text) * 30

    C_TOT_PRAT.Text = Val(C_GR1_1TextBox.Text) + Val(C_GR1_2TextBox.Text) + Val(C_GR1_3TextBox.Text) + Val(C_GR1_GPTextBox.Text) + Val(C_GR2_4TextBox.Text) + Val(C_GR2_5TextBox.Text) + Val(C_GR2_6TextBox.Text) + Val(C_GR2_GPTextBox.Text) + Val(C_GR3_7TextBox.Text) + Val(C_GR3_GPTextBox.Text) + Val(C_AG_MTextBox.Text) + Val(C_AG_LTextBox.Text)
    P_C_TOT_PUNTI.Text = Val(P_C_GR1_1.Text) + Val(P_C_GR1_2.Text) + Val(P_C_GR1_3.Text) + Val(P_C_GR1_GP.Text) + Val(P_C_GR2_4.Text) + Val(P_C_GR2_5.Text) + Val(P_C_GR2_6.Text) + Val(P_C_GR2_GP.Text) + Val(P_C_GR3_7.Text) + Val(P_C_GR3_GP.Text) + Val(P_C_AG_M.Text) + Val(P_C_AG_L.Text)

    'totali
    totpratiche.Text = Val(A_TOT_PRAT.Text) + Val(B_TOT_PRAT.Text) + Val(C_TOT_PRAT.Text)
    totpunti.Text = Val(P_A_TOT_PUNTI.Text) + Val(P_B_TOT_PUNTI.Text) + Val(P_C_TOT_PUNTI.Text)

    'modello H1 - TABPAGE2
    INPS_ARG_DI.Text = Val(DI_A_ATextBox.Text) + Val(DI_A_RTextBox.Text) + Val(DI_A_GTextBox.Text)
    INAIL_ARG_DI.Text = Val(DI_B_ATextBox.Text) + Val(DI_B_RTextBox.Text) + Val(DI_B_GTextBox.Text)
    ALTRI_ARG_DI.Text = Val(DI_C_ATextBox.Text) + Val(DI_C_RTextBox.Text) + Val(DI_C_GTextBox.Text)

    INPS_ARG_DL.Text = Val(DL_A_ATextBox.Text) + Val(DL_A_RTextBox.Text) + Val(DL_A_GTextBox.Text)
    INAIL_ARG_DL.Text = Val(DL_B_ATextBox.Text) + Val(DL_B_RTextBox.Text) + Val(DL_B_GTextBox.Text)
    ALTRI_ARG_DL.Text = Val(DL_C_ATextBox.Text) + Val(DL_C_RTextBox.Text) + Val(DL_C_GTextBox.Text)

    DI_GR1PTextBox.Text = Val(A_GR1_1TextBox.Text) + Val(A_GR1_2TextBox.Text) + Val(B_GR1_1TextBox.Text) + Val(B_GR1_2TextBox.Text) + Val(B_GR1_3TextBox.Text) + +Val(C_GR1_1TextBox.Text) + Val(C_GR1_2TextBox.Text) + Val(C_GR1_3TextBox.Text)
    DI_GR2PTextBox.Text = Val(A_GR2_3TextBox.Text) + Val(A_GR2_4TextBox.Text) + Val(A_GR2_5TextBox.Text) + Val(A_GR2_6TextBox.Text) + Val(B_GR2_4TextBox.Text) + Val(B_GR2_5TextBox.Text) + Val(C_GR2_4TextBox.Text) + Val(C_GR2_5TextBox.Text) + Val(C_GR2_6TextBox.Text)
    DI_GR3PTextBox.Text = Val(A_GR3_7TextBox.Text) + Val(A_GR3_8TextBox.Text) + Val(B_GR3_6TextBox.Text) + Val(B_GR3_7TextBox.Text) + Val(C_GR3_7TextBox.Text)
    DI_GPPTextBox.Text = Val(A_GR1_GPTextBox.Text) + Val(A_GR2_GPTextBox.Text) + Val(A_GR3_GPTextBox.Text) + Val(B_GR1_GPTextBox.Text) + Val(B_GR2_GPTextBox.Text) + Val(B_GR3_GPTextBox.Text) + Val(C_GR1_GPTextBox.Text) + Val(C_GR2_GPTextBox.Text) + Val(C_GR3_GPTextBox.Text)
    DI_MPTextBox.Text = Val(A_AG_MTextBox.Text) + Val(B_AG_MTextBox.Text) + Val(C_AG_MTextBox.Text)
    DI_LPTextBox.Text = Val(A_AG_LTextBox.Text) + Val(B_AG_LTextBox.Text) + Val(C_AG_LTextBox.Text)
    TOTCHDI.Text = Val(DI_GR1PTextBox.Text) + Val(DI_GR1NTextBox.Text) + Val(DI_GR2PTextBox.Text) + Val(DI_GR2NTextBox.Text) + Val(DI_GR3PTextBox.Text) + Val(DI_GR3NTextBox.Text) + Val(DI_GPPTextBox.Text) + Val(DI_GPNTextBox.Text) + Val(DI_MPTextBox.Text) + Val(DI_MNTextBox.Text) + Val(DI_LPTextBox.Text) + Val(DI_LNTextBox.Text)
    TOTCHDL.Text = Val(DL_GR4PTextBox.Text) + Val(DL_GR4NTextBox.Text) + Val(DL_GR5PTextBox.Text) + Val(DL_GR5NTextBox.Text) + Val(DL_GPPTextBox.Text) + Val(DL_GPNTextBox.Text) + Val(DL_MPTextBox.Text) + Val(DL_MNTextBox.Text) + Val(DL_LPTextBox.Text) + Val(DL_LNTextBox.Text) + Val(DL_N_C.Text)

    TOTINPS.Text = Val(DI_INPSTextBox.Text) + Val(DL_INPSTextBox.Text)
    TOTINAIL.Text = Val(DI_INAILTextBox.Text) + Val(DL_INAILTextBox.Text)
    TOTALTRI.Text = Val(DI_ALTRITextBox.Text) + Val(DL_ALTRITextBox.Text)

    AP_INPS.Text = Val(INPS_ARG_DI.Text) + Val(INPS_ARG_DL.Text)
    CH_INPS.Text = Val(TOTINPS.Text)
    AP_INAIL.Text = Val(INAIL_ARG_DI.Text) + Val(INAIL_ARG_DL.Text)
    CH_INAIL.Text = Val(TOTINAIL.Text)
    AP_ALTRI.Text = Val(ALTRI_ARG_DI.Text) + Val(ALTRI_ARG_DL.Text)
    CH_ALTRI.Text = Val(TOTALTRI.Text)
    TOTENTIDI.Text = Val(DI_INPSTextBox.Text) + Val(DI_INAILTextBox.Text) + Val(DI_ALTRITextBox.Text)
    TOTENTIDL.Text = Val(DL_INPSTextBox.Text) + Val(DL_INAILTextBox.Text) + Val(DL_ALTRITextBox.Text)

    End Sub
  • Re: Problemi con Tabcontrol

    Jan ha scritto:


    Grazie per l'interessamento.Non ho pubblicato il codice perché poco significativo rispetto al problema: perché cioè i calcoli non vengono eseguiti sulla seconda pagina del Tabcontrol.
    infatti non è questo che volevo vedere (avevi già detto che tramite pulsante funziona), ma la gestione degli eventi
  • Re: Problemi con Tabcontrol

    Spero questa volta di aver capito (sappi,tra l'altro, che vengo da Vb6 e con Net non ho molta esperienza!) :

    Private Sub IDTextBox_TextChanged(sender As Object, e As EventArgs) Handles IDTextBox.TextChanged
    calcolaPunti()
    End Sub
  • Re: Problemi con Tabcontrol

    Patel, grazie per la tua collaborazione.Ho risolto così:
    Private Sub TabControl1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles TabControl1.SelectedIndexChanged
    calcolaPunti()
    End Sub
    Grazie ancora.
Devi accedere o registrarti per scrivere nel forum
5 risposte