MS Visual C++ : Array of Button

Gast #1052722
Lesenswert?
• ▲
▼
Hallo, ich probiere gerade etwas mit MS Visual C++.

Ich habe eine Form angelegt. Darauf ein Button angelegt.
Das habe ich per "drag&drop" aus der Toolbox erstellt. Dazu wird 
folgender COde generiert:
1
private: System::Windows::Forms::Button^  button1;
Das müsste mir einen "Zeiger" des Typs Button mit dem Namen button1 
deklarieren.
1
this->button1 = (gcnew System::Windows::Forms::Button());
Das erzeugt den Button auf der Form.
1
this->Overlays->Controls->Add(this->button1);
Hier wird der Button einem groupBox-Container (mit Namen Overlay) 
hinzugefügt.
1
this->button1->Location = System::Drawing::Point(271, 52);
2
this->button1->Name = L"button1";
3
this->button1->Size = System::Drawing::Size(108, 35);
4
this->button1->TabIndex = 0;
5
this->button1->Text = L"Anzeigen";
6
this->button1->UseVisualStyleBackColor = true;
7
this->button1->Click += gcnewSystem::EventHandler(this,&Form1::button1_Click);
Das legt Eigenschaften/Ereignisse des Buttons fest.

Die Erklärung von mir ist sicherlich nicht fachgerecht. Aber das ist 
soweit von mir nachvollziehbar. Im Ereignis Click habe ich ein Stück 
Code hinterlegt, welches mir die Hintergrundfarbe des Buttons ändert. 
Das geht auch.

Jetzt möchte ich aber ein Array von Buttons (32x8) anlegen. Wie muss ich 
das nun machen, damit ich den Quellcode für die Funktion möglichst nur 
einmal mit einer Schleife bearbeiten kann? also sowas: button1[x][y] ??

Danke schonmal
#1054522
Lesenswert?
• ▲
▼
Hi,
wenn zum Beispiel in nem Panel vorliegend:

Panel1->Controls->Add(gcnew Button() );

Natürlich musst du den Button dann noch positionieren.

int LabelIndex = Panel1->Controls->Count -1;
Panel1->Controls[LabelIndex]->Left = 10;
Panel1->Controls[LabelIndex]->Top = (EditIndex * 15 )-20;
Panel1->Controls[LabelIndex]->Width = 50;
Panel1->Controls[LabelIndex]->TabIndex = Panel1->Controls->Count - 
(Elemente im Panel die schon vorhanden sind);

Hoffe ich habe dich richtig verstanden und es hilft dir.
Gruß

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren