Unrue
14-04-2006, 15:28
Con il Borland C++ Builder 6 sto sviluppando un programma che crea e risolve labirinti. E' un labirinto 8x8 . Ho associato ad ogni bottone del labirinto una funzione che chiama una procedura, del tipo:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
genera_iniziofine(array_bottoni,1,iniziofine);
}
Il problema è che ho 64 funzioni di questo tipo nel codice, ognuna gestisce il click del bottone. Siccome l'evento che scatena è lo stesso per tutti i bottoni, mi chiedevo se c'e' il modo di fare una funzione globale che gestisce tutti e 64 i bottoni, in modo che gli passo il bottone che genera l'evento e da li' richiama la procedura.
Un altro problema che ho incontrato è il seguente: quando trovo il percorso che risolve il labirinto, gli dico di cambiare colore ai bottoni facenti parte del percorso nel seguente modo:
Button1->Brush->Color=clBlue;
ma non cambia il colore, sembra che alcune proprietà dei bottoni siano bloccate. Lo stesso lo fa se voglio cambiare l'aspetto del puntatore del mouse.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
genera_iniziofine(array_bottoni,1,iniziofine);
}
Il problema è che ho 64 funzioni di questo tipo nel codice, ognuna gestisce il click del bottone. Siccome l'evento che scatena è lo stesso per tutti i bottoni, mi chiedevo se c'e' il modo di fare una funzione globale che gestisce tutti e 64 i bottoni, in modo che gli passo il bottone che genera l'evento e da li' richiama la procedura.
Un altro problema che ho incontrato è il seguente: quando trovo il percorso che risolve il labirinto, gli dico di cambiare colore ai bottoni facenti parte del percorso nel seguente modo:
Button1->Brush->Color=clBlue;
ma non cambia il colore, sembra che alcune proprietà dei bottoni siano bloccate. Lo stesso lo fa se voglio cambiare l'aspetto del puntatore del mouse.