| 
 | |||||||
| 
 | 
|  | 
|  | 
|  | Strumenti | 
|  20-04-2006, 22:55 | #1 | 
| Senior Member Iscritto dal: Dec 1999 
					Messaggi: 368
				 | 
				
				[C++]creazione e gestione array di Tbutton
			 
		salve, sto cercando di ricreare il gioco campo minato con il c++ builder, giusto x allenarmi un po' con la programmazione GUI. dopo essermi impazzito x creare un array di oggetti, ho scritto questo codice: TButton *button[100]; . . . for (int j=0;j<10;j++) for (int i=0;i<10;i++) { button[i][j] = new TButton(this); button[i][j]->Parent=Form1; button[i][j]->UseRightToLeftAlignment(); button[i][j]->Height=30; button[i][j]->Width=30; button[i][j]->Left=i*30; button[i][j]->Top=10+(j*30); button[i][j]->Caption=IntToStr((i+1)*(j+1)); button[i][j]->OnClick=TForm1::ButtonClick; } void __fastcall TForm1::ButtonClick(TObject *Sender) { } mi sono cioe' creato il mio bel campo da gioco   e ho associato all' evento OnClick una funzione ButtonClick creata ad hoc da me... ma ora il problema è che nella funzione io non ho nessun modo x risalire al bottone che l' ha creato! vorrei cioe' poter risalire al bottone che mi chiama quell' evento, e cioe' alla fine all' indice i e j tramite i quali so quale bottone e' stato premuto... ho provato a modificare la funzione ButtonClick in: void __fastcall TForm1::ButtonClick(TObject *Sender,int i,j); ma ho la netta impressione che non è cosi' che funzioni(e infatti non so piu' come associare l' evento alla funzione se modifico la funzione in questo modo) ultima domanda, se anziche' voler creare un array di puntatore fisso volessi usare un doppio puntatore, come devo fare? se infatti il codice seguente funziona alla perfezione: TButton *button; button= new TButton(this); il seguente codice NON funziona: TButton **button; button= new *TButton(this)[100]; dicendo: Cannot convert 'int * *' to 'TButton * *' riferendosi all' assegnazione button=... e nemmeno questo funziona: button= new *TButton(this); | 
|   |   | 
|   | 
| Strumenti | |
| 
 | 
 | 
Tutti gli orari sono GMT +1. Ora sono le: 08:11.









 
		 
		 
		 
		





 
  
 



 
                        
                        










