Newsgroup: it.comp.lang.visual-basic
Titolo: [?] limite massimo di controlli sul form

ciao a tutti,
mi si è verificato che ho raggiunto il limite massimo di controlli
inseribili in un form :-)
e volevo chiedervi se esiste la possibilità di sapere il numero
dei controlli al momento inseriti nel form (es: debug.print n_controlli ?)
ed, esagerendo, se è possibile sapere quali controlli sono effettivamente
utilizzati.
ciao
jack

 utilizzati.
Eh?
Perchè tu metti controlli che non utilizzi in un form???
Siamo di fronte a un altro caso di "non so cosa mi serve: chiedo una cosa a
caso". :)
Ciao

 wrote in message
6Cqj8.57585$_u5.1...@news1.tin.it...

purtroppo il progetto in questione è datato (alle mie primissime avventure
in vb),
di conseguenze, tante label, tanti datacontrol, tanti combo ecc...
ma ad oggi (nel frattempo ho appreso molte più nozioni per sviluppare un
progetto) mi ritrovo
con questo form pieno di controlli.
cerco quindi di "ripulirlo", spero di cavarmela
ciao
jack

 mancava :P
Zanna, ho alcune finestre (un gestionale) con ben oltre 255 controlli
(persino 400), tutti usati e, ovviamente, indicizzati. ;-)

 (persino 400), tutti usati e, ovviamente, indicizzati. ;-)
Ok, ma qui si parlava di controlli inutilizzati.
Inoltre non credo comunque che il tuo prog. ti dica che ci sono troppi
controlli ;) e 400 è decisamente un numero elevato.
Ciao


mmm... 400 controlli su un solo form... gestionale...
fra un record e l'altro l'utente fa in tempo a pranzare?   ;-P
ciao
ugo

 ha scritto nel messaggio
news:a6ls6e$b5n$1...@pegasus.tiscalinet.it...

Certo, l'obiezione è lecita, ma molti sono presenti e resi visibili solo se
se ne attivano le rispettive opzioni (sai com'è i clienti sono tanti,
ciascuno ha le sue esigenze e io non voglio scrivere cento versioni della
stessa finestra), comunque prova a pensare alla registrazione di una
fattura: Zona comune (tipo fattura, nota accredito, emessa, ricevuta, etc),
Scheda (uso SSTab) Testata (pagamento, esenzione, deposito competenza, note,
sconti globali, agenti, etc.), Scheda Accompagnamento (info per fatture
accompagnatorie), Scheda Varie (Banca, note descrittive, etc.) e,
finalmente, Scheda Righe (con un milione di campi). Si arriva alla svelta a
400 controlli, ovviamente col vantaggio che l'operatore può saltare da una
scheda all'altra senza problemi. Ovvio, si potrebbe fare con form diversi,
ma si avrebbe la sensazione di informazioni sconnesse, separate.

 ha scritto nel messaggio
news:5Duj8.7421$%g7.2...@twister2.libero.it...
CUT
esiste però (sull'altro piatto della bilancia) la "sindrome da
soffocamento".ci sono casi in cui....
Troppi controlli ...troppe info tutte assieme...intimoriscono
l'operatore.(che non sempre ha una cultura informatica elevata)
E poi io non ci credo dai...400 controlli!!!!...in una form!!!...se devi
inserire un campo ...solo a trovare lo spazio!
...e poi non ci credo che non rallenti...pensa a ridisegnarla!
brrrr!....ognuno fa come li pare ma non mi sembra un esempio da
seguire...scusa se mi permetto eh!

"Wodka4U" <marco_123_TOGLIQUI@mar_456_ANCHEQUI_tek.it> ha scritto nel
messaggio news:RmEj8.59009$_u5.1...@news1.tin.it...

Forse non hai letto bene, distinguo i circa 400 controlli (che confermo,
nessuno ridondante e tutti necessari, non tutti necessariamente da
compilare) in 3/4 schede di un SSTab, ti garantisco che la finestra (con le
opzioni di competenza attivate) non è affatto "ammucchiata", anzi, piuttosto
"pulita".

 sensazione di informazioni sconnesse, separate. 
hai mai considerato la possibilità di una "finestra proprietà", come 
quella che VB usa per i controlli?
-- 
 < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
     Don't stand, REACT!      version 0.0.19. C, C++ and ASM developers
                              and beta testers are welcome!

 inseribili in un form :-)
Usa degli array di controlli invece che tanti controlli singoli. In questo
modo risolvi il problema del numero massimo (a meno che non riesci ad
inserire 256 controlli di tipo diverso tra loro. ;-))
Per creare un array di controlli, dai lo stesso nome a tutti i controlli
dello stesso tipo. L'unica cosa che varia è il valore di Index, ed ogni
singolo controllo si richiama indicandolo con corretto numero di indice.
Es: in un array di textbox di nome Text1 per leggere il testo contenuto nel
3' fai:
Debug.print  Text1(2).Text ' Il primo ha indice 0, quindi il terzo ha indice
2
Questo è particolarmente indolore con le label, che disolito non necessitano
di assegnazione di valori nel sorgente, ma solo in fase di creazione sulla
form. Negli altri casi, per ricordarti che cosa è contenuto in ogni elemento
dell'array di controlli. è meglio che ti crei una enum. Es:
Private Enum EControlliTesto
   ET_Nome=0
   ET_Cognome
   ET_Indirizzo
   ET_Telefono
End Enum
In questo modo, il tuo 3' elemento del Text1 di cui sopra, lo puoi
interrogare con:
Debug.print Text1(EC_Indirizzo).Text
Ciao
*Roby*