tworzenie komponentu TShape poprzez użycie new
Napisane: niedziela, 7 grudnia 2008, 15:37
witam, chciałbym stworzyć dynamicznie komponent klasy TShape tak żeby pojawił się na formie. skleciłem coś takiego:
jak widać kliknięcie na przycisk ma stworzyć nowy komponent na formie Form1, jest tylko taki problem, że na formie owego komponentu nie widać, chociaż na pewno istnieje bo da się odwoływać do jego właściwości i metod. Jak więc wyświetlić go teraz na formie?
- Kod: Zaznacz cały
TShape *Shape2;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Shape2 = new TShape(Form1);
Shape2->Width=20;
Shape2->Height=20;
Shape2->Name="sh2";
Shape2->Shape=stCircle;
Shape2->Visible=true;
Shape2->Left=100;
Shape2->Top=100;
Shape2->Brush->Color=clWhite;
Shape2->Brush->Style=bsSolid;
Shape2->Enabled=true;
Shape2->ParentShowHint=true;
Shape2->Pen->Color=clBlack;
Shape2->Pen->Mode=pmCopy;
Shape2->Pen->Style=psSolid;
Shape2->Width=1;
Shape2->Tag=1;
Shape2->Align=alNone;
}
jak widać kliknięcie na przycisk ma stworzyć nowy komponent na formie Form1, jest tylko taki problem, że na formie owego komponentu nie widać, chociaż na pewno istnieje bo da się odwoływać do jego właściwości i metod. Jak więc wyświetlić go teraz na formie?