Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:

Soutěž

Sponzorem soutěže je:

IDIF

 

Kdo je autorem výstavy obrazových fotografií „Očima Hanse Christiana Andersena“?

V dnešní soutěži hrajeme o:



Jak rozlišit, který prvek vyvolal funkci.

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

Re: Jak rozlišit, který prvek vyvolal funkci.

Autor: PBalu ♂

18:04:46 21.06.2013

Děkuji - to je ono - už to šlape ...

Citovat příspěvek

 

Re: Jak rozlišit, který prvek vyvolal funkci.

Autor: hluche_ucho ♂

15:37:22 21.06.2013

PBalu napsal/a

Zdravím. V BCB tvořím prográmek. V Runtime na panel přidám nějaký prvek (například tlačítko) a přiřadím k němu fonkci pro stisk tlačítka :

TButton *BtnDin;
BtnDin = new TButton(DynamickyPanel);

BtnDin->Visible = true;
BtnDin->Parent = DynamickyPanel;
BtnDin->Width = 75;
BtnDin->Height = 30;
BtnDin->Top = TP.y-BtnDin->Height/2;
BtnDin->Left = TP.x-BtnDin->Width/2;
BtnDin->Caption = TP.x;
BtnDin->OnClick=DinButtonClick;
BtnDin->Name="But"+BtnDin->Caption;

Funkce "DinButtonClick" vypadá jako standartní funkce pro stisk tlačítka :

void __fastcall TForm1::DinButtonClick(TObject *Sender)
{
// ---------------------- vlastní funkce ----------------------
}

Jenže nevím, jak ve funkci rozlišit, které z těch tlačítek mi tu funkci zrovna zavolalo.

Když si dám vypsat Sender->ClassName(), tak mi to vypáše TButton. Já bych potřeboval dostat z toho BtnDin->Name nebo jiný nezaměnitelný identifikátor.

Můžete mi, prosím, někdo poradit ?
Děkuji.



S Timerem jsem to dělal kdysi takhle:

if (Sender->ClassNameIs("TTimer")) {
TTimer *Vzorkujx = (TTimer *)Sender;
//Vzorkujx je pointer na Timer, který událost vyvolal
int cislo = Vzorkujx->Tag;
}

hu

Citovat příspěvek

 

Jak rozlišit, který prvek vyvolal funkci.

Autor: PBalu ♂

10:40:19 21.06.2013

Zdravím. V BCB tvořím prográmek. V Runtime na panel přidám nějaký prvek (například tlačítko) a přiřadím k němu fonkci pro stisk tlačítka :

TButton *BtnDin;
BtnDin = new TButton(DynamickyPanel);

BtnDin->Visible = true;
BtnDin->Parent = DynamickyPanel;
BtnDin->Width = 75;
BtnDin->Height = 30;
BtnDin->Top = TP.y-BtnDin->Height/2;
BtnDin->Left = TP.x-BtnDin->Width/2;
BtnDin->Caption = TP.x;
BtnDin->OnClick=DinButtonClick;
BtnDin->Name="But"+BtnDin->Caption;

Funkce "DinButtonClick" vypadá jako standartní funkce pro stisk tlačítka :

void __fastcall TForm1::DinButtonClick(TObject *Sender)
{
// ---------------------- vlastní funkce ----------------------
}

Jenže nevím, jak ve funkci rozlišit, které z těch tlačítek mi tu funkci zrovna zavolalo.

Když si dám vypsat Sender->ClassName(), tak mi to vypáše TButton. Já bych potřeboval dostat z toho BtnDin->Name nebo jiný nezaměnitelný identifikátor.

Můžete mi, prosím, někdo poradit ?
Děkuji.

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: