我想创建一个函数,它接受按下按钮的Caption
并将其放入编辑字段。我有多个按钮,我不希望多个OnClick
事件在每个事件中都有相同的代码。
我已经搜索并尝试了几个小时的东西,但似乎找不到那样的东西(但我想我不是唯一有这个问题的人)。
我对编程并不陌生,但我也不擅长编程。
编辑:我记得.NET中的点击功能中有一个参数EventArgs e
,在使用Embarcadero时缺少这个参数。
private void button_Click(object sender, EventArgs e)
{
edit.Text = e.Caption; //I don't really remember the exact syntax but I hope you get what I meant
}
答案 0 :(得分:0)
大多数VCL / FMX事件处理程序都有一个Sender
参数,该参数是指向触发事件的对象的指针。例如:
void __fastcall TMyForm::ButtonClick(TObject *Sender)
{
Edit1->Text = static_cast<TButton*>(Sender)->Caption;
}
只需将此单个事件处理程序分配给所有OnClick
个对象的TButton
事件即可。 Sender
将是当前按下的按钮。
答案 1 :(得分:0)
请注意Remy的上述答案 - 对于VCL,属性名称为&#34; Caption&#34;但是对于FMX,按钮的属性名称为&#34; Text&#34;