//В файле Unit1.h
class TForm1 : public TForm
{
__published: // IDE-managed Components
TButton *Button1;
void __fastcall Button1Click(TObject *Sender);
private: // User declarations
public: // User declarations
TButton *MyButtons[15];
__fastcall TForm1(TComponent* Owner);
};
//В файле Unit1.cpp
void __fastcall TForm1::Button1Click(TObject *Sender)
{
for(int i = 0;i < 15;i++)
{
MyButtons = new TButton(Owner);
MyButtons->Parent = Form1;
MyButtons->Left = i * 20;
MyButtons->Top = 0;
MyButtons->Height = 20;
MyButtons->Width = 20;
}
}
Как создать массив из кнопок, чтобы каждая была элю массива
На пример 15 кнопок и они задействованы в цикле или другое.
Заранее благодарен
Цитата:
Originally posted by vpdt
Как создать массив из кнопок, чтобы каждая была элю массива
На пример 15 кнопок и они задействованы в цикле или другое.
Заранее благодарен
Как создать массив из кнопок, чтобы каждая была элю массива
На пример 15 кнопок и они задействованы в цикле или другое.
Заранее благодарен
что-то типа:
TButton myBut[10];
for (int i=0;i<9;i++)
{
myBut = new TButton(..);
}
как только будет Билдер под рукой - могу написать работающий пример
Код:
т.е. при нажатии кнопки Button1 у тя сверху на форме будут рисоваться 15 кнопок размером 20х20
Цитата:
Originally posted by Gerret
В принципе это делается так:
т.е. при нажатии кнопки Button1 у тя сверху на форме будут рисоваться 15 кнопок размером 20х20
В принципе это делается так:
Код:
//В файле Unit1.h
class TForm1 : public TForm
{
__published: // IDE-managed Components
TButton *Button1;
void __fastcall Button1Click(TObject *Sender);
private: // User declarations
public: // User declarations
TButton *MyButtons[15];
__fastcall TForm1(TComponent* Owner);
};
//В файле Unit1.cpp
void __fastcall TForm1::Button1Click(TObject *Sender)
{
for(int i = 0;i < 15;i++)
{
MyButtons = new TButton(Owner);
MyButtons->Parent = Form1;
MyButtons->Left = i * 20;
MyButtons->Top = 0;
MyButtons->Height = 20;
MyButtons->Width = 20;
}
}
class TForm1 : public TForm
{
__published: // IDE-managed Components
TButton *Button1;
void __fastcall Button1Click(TObject *Sender);
private: // User declarations
public: // User declarations
TButton *MyButtons[15];
__fastcall TForm1(TComponent* Owner);
};
//В файле Unit1.cpp
void __fastcall TForm1::Button1Click(TObject *Sender)
{
for(int i = 0;i < 15;i++)
{
MyButtons = new TButton(Owner);
MyButtons->Parent = Form1;
MyButtons->Left = i * 20;
MyButtons->Top = 0;
MyButtons->Height = 20;
MyButtons->Width = 20;
}
}
т.е. при нажатии кнопки Button1 у тя сверху на форме будут рисоваться 15 кнопок размером 20х20
Спасибо за помощь это мне пригодится, но у меня загвоздка :) 15 кнопок у меня уже есть, как мне их обработать в массиве? В вашем примере они создаются все время заново, а у меня они уже имеют свойство и каждая кнопка разное.
Вот и как мне объеденить несколько кнопок в массив?
А за помощь спасибо:)
Цитата:
Originally posted by vpdt
Спасибо за помощь это мне пригодится, но у меня загвоздка :) 15 кнопок у меня уже есть, как мне их обработать в массиве? В вашем примере они создаются все время заново, а у меня они уже имеют свойство и каждая кнопка разное.
Вот и как мне объеденить несколько кнопок в массив?
А за помощь спасибо:)
Спасибо за помощь это мне пригодится, но у меня загвоздка :) 15 кнопок у меня уже есть, как мне их обработать в массиве? В вашем примере они создаются все время заново, а у меня они уже имеют свойство и каждая кнопка разное.
Вот и как мне объеденить несколько кнопок в массив?
А за помощь спасибо:)
В таком случае надо создать массив указателей на кнопки
Код:
TButton *MyButtons[15];
MyButtons[0] = (TButton *)Button1;
MyButtons[1] = (TButton *)Button1;
...
MyButtons[14] = (TButton *)Button15;
MyButtons[0] = (TButton *)Button1;
MyButtons[1] = (TButton *)Button1;
...
MyButtons[14] = (TButton *)Button15;
И при этом все изменения которые ты будешь делать с элементами массива будут применятся к реальным кнопкам.
MyButtons[0]->Caption = "Hellow World"; тоже самое что Button1->Caption = "Hellow World"; :D
я мог где-нить ошибится :), я не проверял... но вообще должно быть правильно...
Огромное спасибо:)