Newsgroup: it.comp.lang.visual-basic
Titolo: If-Then

Ciao, sono Alessandro, ho un piccolo problema: devo scrivere un elenco lungo
di condizioni  in un 'If-Then'  che non mi sta in una sola riga, come devo
fare per andare a capo riga?
if co1(0).BackColor= &HFF8080 and co2(0).BackColor= &HFF8080 and
co3(0).BackColor= &HFF8080 and co4(0).BackColor= &HFF8080 or
co2(0).BackColor= &HFF8080 and co3(0).BackColor= &HFF8080 and
co4(0).BackColor= &HFF8080 and co5(0).BackColor= &HFF8080 or
co3(0).BackColor= &HFF8080 and co4(0).BackColor= &HFF8080 and
co5(0).BackColor= &HFF8080 and co6(0).BackColor= &HFF8080 or
co4(0).BackColor= &HFF8080 and co5(0).BackColor= &HFF8080 and
co6(0).BackColor= &HFF8080 and co7(0).BackColor= &HFF8080 or
co1(1).BackColor= &HFF8080 and co2(1).BackColor= &HFF8080 and
co3(1).BackColor= &HFF8080 and co4(1).BackColor= &HFF8080 or
co2(1).BackColor= &HFF8080 and co3(1).BackColor= &HFF8080 and
co4(1).BackColor= &HFF8080 and co5(1).BackColor= &HFF8080 or
co3(1).BackColor= &HFF8080 and co4(1).BackColor= &HFF8080 and
co5(1).BackColor= &HFF8080 and co6(1).BackColor= &HFF8080 or
co4(1).BackColor= &HFF8080 and co5(1).BackColor= &HFF8080 and
co6(1).BackColor= &HFF8080 and co7(1).BackColor= &HFF8080
    co1(2).BackColor = &HFF8080 And co2(2).BackColor = &HFF8080 And
co3(2).BackColor = &HFF8080 And co4(2).BackColor = &HFF8080 Or
co2(2).BackColor = &HFF8080 And co3(2).BackColor = &HFF8080 And
co4(2).BackColor = &HFF8080 And co5(2).BackColor = &HFF8080 Or
co3(2).BackColor = &HFF8080 And co4(2).BackColor = &HFF8080 And
co5(2).BackColor = &HFF8080 And co6(2).BackColor = &HFF8080 Or
co4(2).BackColor = &HFF8080 And co5(2).BackColor = &HFF8080 And
co6(2).BackColor = &HFF8080 And co7(2).BackColor = &HFF8080
   then vinto.Visible=True

 co2(0).BackColor= &HFF8080 and co3(0).BackColor= &HFF8080 and _ eccetere
eccetera

 ti consiglio di incistare
Per pieta', me lo traduci?
_____________________________________________
James Tiberius Kirk, matricola SC 937-076 CEC
  Nato a Riverside, nello Iowa, USA, Terra
            il 1277.1 (26/03/2233)


Const C0 As Long = &HFF8080
For i=0 to 2
    if co1(I).BackColor= C0 and co2(I).BackColor= C0 and _
            co3(I).BackColor= C0 and co4(I).BackColor= C0 or _
            co2(I).BackColor= C0 and co3(I).BackColor= C0 and _
            co4(I).BackColor= C0 and co5(I).BackColor= C0 or _
            co3(I).BackColor= C0 and co4(I).BackColor= C0 and _
            co5(I).BackColor= C0 and co6(I).BackColor= C0 or _
            co4(i).BackColor= C0 and co5(I).BackColor= C0 and _
            co6(I).BackColor= C0 and co7(I).BackColor= C0 then
        vinto.Visible=true
    end if
next
Cosi' viene un po' meglio... Cmq sicuramente c'e' un modo piu' efficiente di
organizzare le variabili di stato che non usare il colore di sfondo...
Ciaotutti,
*

 organizzare le variabili di stato che non usare il colore di sfondo...
be', pero' cosi' hai almeno 16 mln di possibilita', e puoi incrociarli
in varie combinazioni. questa si' che e' logica fuzzy :)

 migliore!
Mmm... Anzitutto dovrebbe probabilmente usare una "matrice virtuale" di
controlli, ovvero un array di controlli il cui indice fisico e': riga *
numero_elementi_per_riga + colonna.
A quel punto puo' fare un controllo sui due centrali: se nessuno di loro e'
del colore giusto puo' anche uscire.
Ovviamente riga e colonna sono zero-based, altrimenti serve un correttivo
costante pari al primo indice delle due: (riga - base_riga) *
numero_elementi_per_riga + (colonna - base_colonna).
Se almeno uno e' del colore giusto conta prima all'indietro fino a quattro,
poi in avanti fino a quattro; se riesce a farlo senza incappare in una
casella (?) di colore sbagliato e' a posto.
Poi replica il test sulle linee successive.
Si tratta di due/tre cicli annidati piuttosto semplici, ma che sono
impossibili con la struttura corrente.
Ciaotutti,
*


Uhm... E poi mi viene fuori un easter egg del controllo che permette
all'utente di cambiarsi da solo il colore di sfondo (realmente accaduto con
un SSPanel, se ne e' accorto il nostro tester poco prima della release e non
siamo riusciti a rimuoverlo... dato che non e' un programma mission-critical
abbiamo abbozzato, tanto al massimo l'utente si setta i suoi font sulle
label) e voglio vederti :P
Ciaotutti,
*