Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - d
Forum - C# / VB.NET - d

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
marco12 (Normal User)
Newbie


Messaggi: 16
Iscritto: 18/05/2011

Segnala al moderatore
Postato alle 22:53
Martedì, 24/05/2011
d

Ultima modifica effettuata da marco12 il 09/09/2011 alle 16:24
PM
Avatar
R0gerBlack (Member)
Expert


Messaggi: 210
Iscritto: 10/06/2010

Up
0
Down
V
Segnala al moderatore
Postato alle 14:44
Mercoledì, 25/05/2011
Innanzitutto ti consiglio di eliminare i bottoni e di fare un unico Array di bottoni

Codice sorgente - presumibilmente C# / VB.NET

  1. Button[] Btn;
  2.         public Form1()
  3.         {
  4.             Btn = new Button[6];
  5.             InitializeComponent();
  6.         }



Così il random lo puoi gestire sistematicamente per i bottoni (se fossero 3000 o 2 sarebbero indifferenti) e risparmi di sei volte la lunghezza del codice.

In questo codice ho fatto un esempio della dichiarazione dell'array di bottoni, un esempio di come far apparire questi bottoni sul Form e di come associarli controlli (Click, ..), in questo modo puoi fare i tuoi 6 bottoni come un array, fare un codice 6 volte più corto con pari effetti (e migliore gestibilità) e ti sarà più facile fare un Random che li comprenda tutti e 6 (visto che il random va a numeri, quei numeri possono rappresentare l'indice dell'Array)
Codice sorgente - presumibilmente C# / VB.NET

  1. Button[] Btn; //Dichiarazione dell'Array
  2.         public Form1()
  3.         {
  4.             InitializeComponent();
  5.             Disegna();
  6.         }
  7.  
  8.         private void Trova_Bottone(object sender, EventArgs e)
  9.         {
  10.             //Dichiarazione di un Bottone variabile
  11.             Button Temp;
  12.             //Il Bottone variabile diventa il bottone dell'array clickato
  13.             Temp = (Button)sender;
  14.             Temp = new Button();
  15.             //Trova che bottone è
  16.             for (int i = 1; i <= 6; i++)
  17.             {
  18.                 //Se questo bottone è stato clickato
  19.                 if(Btn[i - 1] == Temp)
  20.                 {
  21.                     //Codice variabile del Button
  22.                 }
  23.             }
  24.         }
  25.         private void Disegna()
  26.         {
  27.             Btn = new Button[6];
  28.             //Esempio di disegno del bottone
  29.             for (int i = 0; i <= 5; i++)
  30.             {
  31.                 //Aggiungi il click del bottone al Disegna_Bottoni
  32.                 Btn[i] = new Button();
  33.                 Btn[i].Click += Trova_Bottone;
  34.                 Btn[i].Location = new Point(i, i * 48);
  35.                 Btn[i].Visible = true;
  36.                 Controls.Add(Btn[i]);
  37.             }
  38.         }



In riepilogo, dopo che tu hai letto tutto

1. Il Random ti sarà più facile gestendo i numeri come l'array
2. Tu hai ideato il gioco, il "bravo" dovresti sapere tu come farlo apparire quando uno completa bene..

PM
Avatar
marco12 (Normal User)
Newbie


Messaggi: 16
Iscritto: 18/05/2011

Up
0
Down
V
Segnala al moderatore
Postato alle 14:54
Mercoledì, 25/05/2011
d

Ultima modifica effettuata da marco12 il 09/09/2011 alle 16:25
PM
Avatar
R0gerBlack (Member)
Expert


Messaggi: 210
Iscritto: 10/06/2010

Up
0
Down
V
Segnala al moderatore
Postato alle 15:01
Mercoledì, 25/05/2011
Cancella i 6 Bottoni e rimpiazzali con le mie righe di codice: Dichiara l'array di bottoni, metti Disegna() in Form1, copia le void Trova_Bottone e Disegna. Una volta fatto, personalizza Disegna in base alle tue esigenze, come l'aspetto dei bottoni, le caratteristiche, il colore, la grandezza e la Posizione variabile in base a "i"

Ultima modifica effettuata da R0gerBlack il 25/05/2011 alle 15:02
PM
Avatar
marco12 (Normal User)
Newbie


Messaggi: 16
Iscritto: 18/05/2011

Up
0
Down
V
Segnala al moderatore
Postato alle 15:11
Mercoledì, 25/05/2011
d

Ultima modifica effettuata da marco12 il 09/09/2011 alle 16:26
PM
Avatar
R0gerBlack (Member)
Expert


Messaggi: 210
Iscritto: 10/06/2010

Up
0
Down
V
Segnala al moderatore
Postato alle 15:16
Mercoledì, 25/05/2011
No ._. sono solo esempi per farti capire come si svolge, non sono adattate alle esigenze del tuo programma (per quanto riguarda di disegnare i bottoni, il resto va bene) e non vedo cosa ci sia di tanto difficile

PM
Avatar
marco12 (Normal User)
Newbie


Messaggi: 16
Iscritto: 18/05/2011

Up
0
Down
V
Segnala al moderatore
Postato alle 15:20
Mercoledì, 25/05/2011
d

Ultima modifica effettuata da marco12 il 09/09/2011 alle 16:25
PM
Avatar
R0gerBlack (Member)
Expert


Messaggi: 210
Iscritto: 10/06/2010

Up
0
Down
V
Segnala al moderatore
Postato alle 15:33
Mercoledì, 25/05/2011
Bhé certo non puoi fare un unico copia incolla, ma devi farli a parti nelle giuste zone, per esempio nella void Form1 mica la devi ricopiare, ma solo il suo interno.

PM
Avatar
marco12 (Normal User)
Newbie


Messaggi: 16
Iscritto: 18/05/2011

Up
0
Down
V
Segnala al moderatore
Postato alle 15:37
Mercoledì, 25/05/2011
d

Ultima modifica effettuata da marco12 il 09/09/2011 alle 16:26
PM
Pagine: [ 1 2 ] Precedente | Prossimo