Dynamiczne dodawanie macierzy w C++ Builder 6.0.
Czyli MACIERZ NR1 + MACIERZ NR2 = MACIERZ NR3 WYNIKOWA.
Macierze Nr1 i 2 są przydzielone dynamicznie.
Po naciśnięciu przycisku = (czyli Button1Click) macierze mają się sumować.
Ale coś nie działa. Jakaś konwersja czy jeszcze coś innego?
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
//MACIERZ NR1
for(int i=0;i<16;i++)
{
edity_macierzy1[i]=new TEdit(this);
edity_macierzy1[i]->Parent=this;
edity_macierzy1[i]->Width=30;
edity_macierzy1[i]->Height=30;
edity_macierzy1[i]->Left=30+i%430;
edity_macierzy1[i]->Top=30+i/430;
edity_macierzy1[i]->Text =IntToStr(0);
edity_macierzy1[i]->OnClick = Button1Click;
}
//MACIERZ NR2
for(int j=0;j<16;j++)
{
edity_macierzy2[j]=new TEdit(this);
edity_macierzy2[j]->Parent=this;
edity_macierzy2[j]->Width=30;
edity_macierzy2[j]->Height=30;
edity_macierzy2[j]->Left=200+j%430;
edity_macierzy2[j]->Top=30+j/430;
edity_macierzy2[j]->Text =IntToStr(0);
edity_macierzy2[j]->OnClick = Button1Click;
}
//MACIERZ NR3 WYNIKOWA
for(int k=0 ; k<16 ; k++)
{
panele_macierzy3[k]=new TPanel(this);
panele_macierzy3[k]->Parent=this;
panele_macierzy3[k]->Width=30;
panele_macierzy3[k]->Height=30;
panele_macierzy3[k]->Left=400+k%430;
panele_macierzy3[k]->Top=30+k/430;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject Sender)
{
for(int k=0 ; k<16 ; k++)
{
int a = StrToInt(dynamic_cast<TEdit>(Sender)->Text);
int b = StrToInt(dynamic_cast<TEdit*>(Sender)->Text);
dynamic_cast<TPanel*>(Sender)->Caption = a+b;
}
}
//---------------------------------------------------------------------------