Oppure

Loading
14/04/09 20:26
azz.ciccio
ciao a tutti magari i problemi finissero.... qualche anima pia ha idea perche' non mi funziona questo spezzone di codice?
grazie:k:
Private Sub Command2_Click()
Dim j, g, pointX, pointY As Long
Dim CostDiv As Long
    Val (listX)  ' listX e' il nome della listbox
    Val (ListY)  ' idem
    
    CostDiv = 10000
    
    ScaleMode = 3
    DrawWidth = 2
    PSet (ScaleWidth, ScaleHeight / 2)
     
     For j = 0 To listX.ListIndex = 0
      pointX = listX / CostDiv
       Picture1.PSet (pointX, pointX), vbRed
       
       
       For g = 0 To ListY.ListCount = 0
        pointY = ListY / CostDiv
         Picture1.PSet (pointY, pointY), vbRed
       
       Next g
     Next j
       
End Sub
aaa
14/04/09 23:42
a occhio il codice non contiene errori, ma esattamente, cosa deve fare? :-?
15/04/09 6:42
azz.ciccio
Postato originariamente da Iohoilpotere:

a occhio il codice non contiene errori, ma esattamente, cosa deve fare? :-?


in sintesi; listX e listY sono i nomi di due listbox al cui interno vengono caricati dei valori numerici tipo string il ciclo for servirebbe per disegnare dei punti sulla picturebox in funzione dei dati letti dalle due listbox.
pero' non funziona! :-|
A.
Ultima modifica effettuata da azz.ciccio 15/04/09 6:43
aaa
15/04/09 12:55
GrG
ho notato un errore nel codice anche se penso che correggendolo comunque non faccia ciò che vuoi tu...
     For j = 0 To listX.ListIndex = 0
      pointX = listX / CostDiv
       Picture1.PSet (pointX, pointX), vbRed
      
      
X       For g = 0 To ListY.ListCount = 0
        pointY = ListY / CostDiv
         Picture1.PSet (pointY, pointY), vbRed
      
       Next g 


alla riga contrassegnata dalla X se vedi c'è ListY.ListCount = 0, mentre alla 1° riga c'è listX.ListIndex = 0

Di + precisamente che errore si manifesta e cosa vuoi fare...
aaa
15/04/09 13:00
ruggy94
Postato originariamente da azz.ciccio:

ciao a tutti magari i problemi finissero.... qualche anima pia ha idea perche' non mi funziona questo spezzone di codice?
grazie:k:
Private Sub Command2_Click()
Dim j, g, pointX, pointY As Long
Dim CostDiv As Long
    Val (listX)  ' listX e' il nome della listbox
    Val (ListY)  ' idem
    
    CostDiv = 10000
    
    ScaleMode = 3
    DrawWidth = 2
    PSet (ScaleWidth, ScaleHeight / 2)
     
     For j = 0 To listX.ListIndex = 0
      pointX = listX / CostDiv
       Picture1.PSet (pointX, pointX), vbRed
       
       
       For g = 0 To ListY.ListCount = 0
        pointY = ListY / CostDiv
         Picture1.PSet (pointY, pointY), vbRed
       
       Next g
     Next j
       
End Sub

Non ho il compilatore su questo PC e poi non uso VB6 quindi vado a tentativi. Intanto potresti specificare cosa intendi con "non funziona". Ti dà qualche errore particolare? Quale? Oppure semplicemente non disegna i punti?
Poi perchè hai scritto
For j = 0 To listX.ListIndex = 0
?
Non dovrebbe essere
For j = 0 To listX.ListCount
?

E anche qui
For g = 0 To ListY.ListCount = 0

Perchè metti = 0 alla fine? Non dovrebbe essere
For g = 0 To ListY.ListCount
?

Poi
Picture1.PSet (pointX, pointX), vbRed

e successivamente
Picture1.PSet (pointY, pointY), vbRed

Perchè entrambe le coordinate del Pset sono X (oppure Y)? Non dovrebbero essere una X e una Y?
aaa
15/04/09 13:58
allora, in questo modo il ciclo ti esce perfettamente (a costo che tu selezioni il primo elemento nelle 2 listbox prima di attivare l'evento)

Dim j, g, pointX, pointY As Long
Dim CostDiv As Long
    Val (listX)
    Val (ListY)
    CostDiv = 10000
    ScaleMode = 3
    DrawWidth = 2
    PSet (ScaleWidth, ScaleHeight / 2)
    For j = 1 To listX.ListCount - 1
        pointX = listX / CostDiv
        Picture1.PSet (pointX, pointX), vbRed
        For g = 1 To ListY.ListCount - 1
            pointY = ListY / CostDiv
            Picture1.PSet (pointY, pointY), vbRed
            ListY.ListIndex = ListY.ListIndex + 1
        Next g
        listX.ListIndex = listX.ListIndex + 1
        ListY.ListIndex = 0
     Next j


Il ciclo fa, soltanto che ci deve essere un problema sul PSet, che io, non avendo mai usato, non ho idea di come funzioni e non posso aiutarti :d
15/04/09 14:14
ruggy94
Ok ma scusa (parlo con azz.ciccio) le due listbox non hanno sempre lo stesso numero di elementi? Perchè se è così si può semplificare molto il lavoro
aaa
15/04/09 14:47
penso che in base al principio di correttezza la dimensione della listbox possa cambiare. Ma ovviamente ci possono essere eccezioni.