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

    Help TextBox!

    Ciao a tutti, sono nuovo di Visual Basic e ho bisogno di un aiutino..
    sto lavorando con Visual Studio 2005, ho creato una form per la mia applicazione con l'editor grafico.. immaginate una pagina con 200 TextBox e un pulsante.
    L'applicazione vuole che alla pressione del pulsante si leggano i valori scritti nelle textbox, si mischiano e si riscrivono in un diverso ordine..

    ora il mio problema è che le textbox si chiamano per default "TextBox1... TextBox200".. è possibile leggerle tutte con un ciclo o devo scrivere 200 righe di codice?

  2. #2
    dimenticavo... tutti i TextBox sono in un TableLayoutPanel.. questo puo' aiutarmi?

  3. #3
    Ho risolto da solo con "TableLayoutPanel1.Controls.Item(i)"

    è possibile fare un check tipo "se è un TextBox.. allora.."

    grazie.

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    21
    Originariamente inviato da marcolino1986
    Ho risolto da solo con "TableLayoutPanel1.Controls.Item(i)"

    è possibile fare un check tipo "se è un TextBox.. allora.."

    grazie.
    si dovrebbe essere possibile con un ciclo for each

    codice:
    for each item as Textbox in TableLayoutPanel1.Controls
     'operazione sulla textbox
    next
    correggetemi se sbaglio...
    Everything happens for a reason...

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326

    Moderazione

    Consiglio all'autore anche una letta al regolamento: linguaggio di programmazione obbligatorio nel titolo. Per VB obbligatoria la versione. Il titolo non deve essere troppo generico...


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    chiedo scusa al moderatore, mea culpa =)

    a me serviva utilizzare un ciclo for o while xke' devo differenziare le colonne della tabella.. faccio un esempio in metacodice quello che vorrei fare...

    for i=0 to NUM_ELEMENTI
    if (TableLayoutPanel1.Controls.item(i)) è un textBox AND (i mod 3)==0
    fai qualcosa
    else if (TableLayoutPanel1.Controls.item(i)) è un textBox AND (i mod 2)==0
    fai qualcos'altro
    endif
    next

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    21
    allora, un metodo te lo do però è un po' grezzo...

    codice:
    for i=0 to NUM_ELEMENTI
     try
       dim temp as new Textbox= Ctype(TableLayoutPanel1.Controls.item(i)),Textbox)
       if (i mod 3)==0
          'fai qualcosa
       else if (i mod 2)==0
          'fai qualcos'altro
       endif
     catch ex as InvalidcastException
       'il controllo non era una textbox, il framework lancia un'eccezione e non fa nulla
     finally
       temp=nothing
     end try
    next
    in poche parole prova a fargli una conversione di tipo forzata. se fallisce viene lanciata un'eccezione e il codice salta al blocco catch che non fa nulla e, di conseguenza, passa al prossimo elmento del for
    Everything happens for a reason...

  8. #8
    ma siamo sicuri che la conversione forzata non sia possibile in alcuni casi?
    per esempio non potrebbe riuscire a convertire una label in un textbox ?

  9. #9
    che cretino.. Item ha la funzione getType()

    cmq edgar grazie mille per il tempo che mi hai deidcato

  10. #10
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    21
    Originariamente inviato da marcolino1986
    che cretino.. Item ha la funzione getType()

    cmq edgar grazie mille per il tempo che mi hai deidcato
    di nulla!

    Che scemo però! non avevo pensato alla getType!!!!
    Everything happens for a reason...

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.