Oppure

Loading
20/05/09 19:43
visualrenzo
ho fatto un programma che genera delle colonne e poi li riempie con dei numeri sorteggiati
ogni volta che premo sul commandbutton genera una nuova colonna list1(indicizzata) max 25 e poi la riempie con 6 numeri.
Il mio problema e che non riesco ne a visualizzare il contenuto in un secondo form riepilogativo ne a salvare il contenuto delle liste list1(1) list1(2) ecc prima di uscire im modo che se voglio le vado a ricaricare in un secondo momento.

spero di essere stato chiaro.
grazie in anticipo:pat:
aaa
20/05/09 21:45
theprogrammer
Se le devi salvare su disco, registra il loro contenuto in un file e rileggilo quando ti serve ...
aaa
20/05/09 23:43
antometal
se le listbox le crei con la funzione load, devi sempre dargli posizione, dimensioni e visibilità
Load list1(1)
list1(1).Top = 0
list1(1).Left = 0
list1(1).Width = 100
list1(1).Height = 100
list1(1).Visible = True


spero d' essere stato utile, se posti anche il codice possiamo dirti di +
aaa
21/05/09 20:33
visualrenzo
grazie come sempre del vostro prezioso aiuto.

questo è il codice che carica le colonne

Public Sub chiamaidx() ' sub chiamaidx CARICA COLONNE


idx = (idx + 1) 'incrementa idx numero colonne estratte
Load List1(idx) 'carica una nuova colonna
Load frmstampacolonne2.List1(idx)
Load frmVisualizzacolonne2.List1(idx)
Load Label6(idx) 'numero colonna estratto
Load frmstampacolonne2.Label6(idx)
Load frmVisualizzacolonne2.Label6(idx)
Label6(idx).Caption = idx ' fissa label6 = numero colonna estratta
frmstampacolonne2.Label6(idx).Caption = idx ' indica il n della colonna
frmVisualizzacolonne2.Label6(idx).Caption = idx
If idx > 25 Then End ' imposto 25 colonne


If y <= FrmCartellone91.Width - 1500 Then 'larghezza
y = y + 550
yy = yy + 400
List1(idx).Top = 200 + x
List1(idx).Left = 200 + y
List1(idx).Visible = True
frmstampacolonne2.List1(idx).Top = 200 + x 'anche nel menu stampacolonne2
frmstampacolonne2.List1(idx).Left = 200 + yy
frmstampacolonne2.List1(idx).Visible = True
frmVisualizzacolonne2.List1(idx).Top = 200 + x 'anche nel menu stampacolonne2
frmVisualizzacolonne2.List1(idx).Left = 200 + yy
frmVisualizzacolonne2.List1(idx).Visible = True

Label6(idx).Top = 2500 + x 'altezza
Label6(idx).Left = 200 + y 'larghezza
Label6(idx).Visible = True ' rende visibile la nuova colonna
frmstampacolonne2.Label6(idx).Top = 2500 + x 'altezza anche nel form di stampa
frmstampacolonne2.Label6(idx).Left = 200 + yy 'larghezza
frmstampacolonne2.Label6(idx).Visible = True ' rende visibile la nuova colonna
frmVisualizzacolonne2.Label6(idx).Top = 2500 + x 'altezza anche nel form di stampa
frmVisualizzacolonne2.Label6(idx).Left = 200 + yy 'larghezza
frmVisualizzacolonne2.Label6(idx).Visible = True ' rende visibile la nuova colonna

Else ' dopo 25 colonne va a capo

x = x + 380
y = 380 + 380
'yy = 380 + 380
List1(idx).Top = 2800 + y 'altezza
List1(idx).Left = 200 + x
List1(idx).Visible = True
' frmstampacolonne2.List1(idx).Top = 2800 + y 'altezza
' frmstampacolonne2.List1(idx).Left = 200 + x
' frmstampacolonne2.List1(idx).Visible = True

frmstampacolonne2.List1(idx).Visible = True
End If

questo è il codice che sorteggia e aggiunge i 6 numeri nella colonna

Dim Estratto As Integer
'******************************* START ******************


Label111.Visible = False
Label1111.Visible = True

Randomize 'Reinizializza la funzione Random, così da ottenere ogni volta serie diverse
Estratto = Int((u * Rnd) + 1) 'Estrae una posizione casuale, tra le u posizioni residue

TxtEstratto = N(Estratto) 'Il NUMERO estratto è quello contenuto nella posizione casuale precedente

Label1(N(Estratto) - 1).BackColor = &HC000& 'Cambia il colore di fondo della casella che contiene il numero estratto

'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx lorenzo xxxxxxxxxxxxxxxxxxxxxxxxx


For ii = 1 To num
If Text1(ii).Text = TxtEstratto Then

List1(idx).AddItem TxtEstratto
frmstampacolonne2.List1(idx).AddItem TxtEstratto ' carica la lista anche nel form di stampa
frmVisualizzacolonne2.List1(idx).AddItem TxtEstratto ' carica la lista anche nel form di stampa
Text1(ii).BackColor = &HFFFF& '&HC000&
totlista = List1(idx).ListCount


If totlista > 5 Then Timer1.Enabled = False ' conta i numeri estratti nella lista colonna


numeriscelti = totlista


End Sub
aaa
21/05/09 22:45
antometal
probabilmente nn vedi le listbox (e penso anche le label), xk quando crei gli oggeti, gli dai visibilità e posizione, ma non la dimensione

    frmstampacolonne2.List1(idx).Top = 200 + x  'anche nel menu stampacolonne2
    frmstampacolonne2.List1(idx).Left = 200 + yy
    frmstampacolonne2.List1(idx).Visible = True


dovresti assegnargli anche le proprietà height e width

    frmstampacolonne2.List1(idx).Top = 200 + x  'anche nel menu stampacolonne2
    frmstampacolonne2.List1(idx).Left = 200 + yy
    frmstampacolonne2.List1(idx).Height = 200
    frmstampacolonne2.List1(idx).Width = 200
    frmstampacolonne2.List1(idx).Visible = True
aaa
21/05/09 23:54
gibra
Non credo sia quello il problema.

Quando si carica un controllo a run-time con
Load controllo(Indice) 

vengono ereditate tutte le proprietà del controllo(0)

aaa
22/05/09 18:53
visualrenzo
IO nel form principale riesco a vederle tutte e 25 ,se le carico tutte e 25.

Il mio problema è che se richiamo per esempio la list1(2) non so come fare a fargli leggere il contenuto per visualizzarle in un altro form o se voglio salvarle.

L' unica cosa che sono riuscito a fare per esempio è fare in modo che mentre le carica nel primo form automaticamente le carica anche sul secondo. ma non è quello che mi interessava fare.

Io vorrei riunire tutte le colonne col rispettivo contenuto per esempio chiamandole colonne sorteggiate e poi richiamarle in visualizzazione o per la stampa da un file salvato.

Si potrà fare?

C' è un' istruzione che mi riepiloga il contenuto di una listbox?
esempio contenuto list1(1) =11 22 33 44 55 66 potere richiamare questi numeri in un altro list o text ?

grazie a tutti:k:
aaa
22/05/09 19:09
theprogrammer
Sinceramente, non ho capito quasi nulla di quello che devi fare, ne' di quale sia il problema ...

Puo' essere che quello che ti serve e' un altro controllo (magari una ListView)?
aaa