View Full Version : [VB.NET] Realizzare incroci tra numeri di una tabella
OrcaAssassina
22-09-2009, 16:34
Devo creare tutti gli "incroci" possibili tra una tabella formata da 3 colonne e 7 righe.
Vi faccio un esempio, questa è la tabella.
La posso fare con 21 textbox
A-B-C
D-E-F
G-H-I
L-M-N
O-P-Q
R-S-T
U-V-Z
Il risultato delle essere
AA con se stesso
AB
AC
AD
AE
AF
.
.
BA
BB con se stesso
BC
BD
BE
BF
.
.
e cosi via....
c'è un metodo per agevolare il tutto senza farlo a mano????
Ciao e grazie
yorkeiser
23-09-2009, 11:50
Certamente.
Ti basta creare un array di elementi grafici (ad esempio textbox), quindi passare tale array ad una funzione che ne calcola le permutazioni.
Una funzione del tipo (uso un pseudo-vb):
sub permuta (array as textbox())
dim array_permutazioni(max_index) as string
for j=0 to 20
for i=0 to 20
array_permutazioni(indice)=array(i) & array(j)
indice = indice+1
next i
next j
end sub
edit: avevo cannato gli indici sui next
OrcaAssassina
23-09-2009, 12:36
Certamente.
Ti basta creare un array di elementi grafici (ad esempio textbox), quindi passare tale array ad una funzione che ne calcola le permutazioni.
Una funzione del tipo (uso un pseudo-vb):
sub permuta (array as textbox())
dim array_permutazioni(max_index) as string
for j=0 to 20
for i=0 to 20
array_permutazioni(indice)=array(i) & array(j)
indice = indice+1
next i
next j
Non ho capito come faccio a passare i valori all'array
io ho le mie text
txtValore1.text
txtValore2.text
txtValore3.text
txtValore4.text
Come faccio???
Ciao e grazie
end sub
edit: avevo cannato gli indici sui next
yorkeiser
23-09-2009, 13:42
In VB puoi creare graficamente un array di elementi (ad esempio textbox):
nell'editor crei una textbox, poi fai copia incolla della textbox sullo stesso form, ed è l'IDE stesso a chiederti se vuoi creare un array di elementi (questo perlomeno nell'IDE del VB6). Gli dici di sì, e magicamente hai l'array. Quindi continui col copia-incolla fino a quando vuoi. A quel punto, i singoli elementi sono manipolabili come fai normalmente con gli array. Ovvero hai textbox(1), textbox(2) ecosì via. Quindi alla funzione passi direttamente l'array textbox()
OrcaAssassina
23-09-2009, 16:52
In VB puoi creare graficamente un array di elementi (ad esempio textbox):
nell'editor crei una textbox, poi fai copia incolla della textbox sullo stesso form, ed è l'IDE stesso a chiederti se vuoi creare un array di elementi (questo perlomeno nell'IDE del VB6). Gli dici di sì, e magicamente hai l'array. Quindi continui col copia-incolla fino a quando vuoi. A quel punto, i singoli elementi sono manipolabili come fai normalmente con gli array. Ovvero hai textbox(1), textbox(2) ecosì via. Quindi alla funzione passi direttamente l'array textbox()
In vb6 si....ora su vb.net come ho scritto nel titolo
Non so come fare
yorkeiser
23-09-2009, 17:35
In VB6 la proprietà di un oggetto grafico che governa se è di tipo matriciale o meno è Index, non ho idea se in vb.net sia la stessa: nel caso la trovi, prova a cambiare quella (scrivici ad esempio 1), e vedi se l'oggetto viene effettivamente ridefinito come textbox(1).
In alternativa, puoi sempre creare una matrice del genere da codice, però hai la rottura di doverti definire da codice anche dimensioni, posizione e forse qualche altra proprietà.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.