اضافة button عن طريق button
#3
السلام عليكم  
كل ما يمكن تنفيذه زمن التصميم يمكن تنفيده زمن التشغيل و العكس غير صحيح
هذه طريقة يمكن التعديل عليها لتلبي حاجاتك
PHP كود :
private
 
   procedure MyEvent(Sender: TObject); 

PHP كود :
procedure TForm1.Button1Click(Sender: TObject);
var
 
 Button: TButton;
begin
  Button         
:= TButton.Create(Self);
 
 Button.Caption := 'Test';
 
 Button.Name    := 'Test';
 
 Button.Parent  := Form1;
 
 Button.Top     := 20;
 
 Button.Left    := 20;
 
 Button.OnClick := MyEvent;
end;

procedure TForm1.MyEvent(Sender: TObject);
begin
  ShowMessage
('test');
end; 

احيلك الى الموضوع  لتفهم اكثر حول Parent و ٍ Self
الحدث OnClick هو من النوع TNotifyEvent  اذا تتبعت النمط تجده معرف كالتالي :

PHP كود :
TNotifyEvent = procedure(Sender: TObject) of object; 

لاحظ انه تم تعريف برامترات الحدث لكن دون اسم اي انه سيقبل اي Procedure باي اسم شرط :
1- ان يحمل نفس البرامترات  
2- ان ينتمي الى كلاس

الذي تشاهده اعلاه ما هو الا مؤشر لدالة كما قلت دلفي حريص على اخفاء تعاملك بالمئشرات لذلك يمكنك اختباره مع الـ nil لمعرفة ان تم اسناد الحدث

بالتوفيق
و لرب نازلة يضيق لها الفتى ذرعا و عند الله منها المخرج
ضاقت فلما استحكمت حلقاتها فرجت و كنت اضنها لا تفرج
الرد


الردود في هذا الموضوع
اضافة button عن طريق button - بواسطة o.akhras1993 - 20-03-2014, 04:19 AM
اضافة button عن طريق button - بواسطة sadwolf - 20-03-2014, 08:17 PM
اضافة button عن طريق button - بواسطة S.FATEH - 20-03-2014, 08:37 PM
اضافة button عن طريق button - بواسطة zte-usb - 22-03-2014, 03:05 PM
اضافة button عن طريق button - بواسطة o.akhras1993 - 24-03-2014, 05:00 AM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم