Recent

Author Topic: معرفة أدوات النموذج  (Read 20222 times)

Al-Eid

  • New Member
  • *
  • Posts: 38
Re: معرفة أدوات النموذج
« Reply #30 on: August 16, 2021, 01:22:32 pm »
للدقة لا يفترض ان تعمل مصفوفة عامة ترجع فيها معلومات مؤقتة
يعني arrNumbercontrol موقعها خطأ
 ان ترجعها من الدالة نفسها وهو الحل الافضل

أنظر لهذا الكود هل تقصد هكذا
Code: Pascal  [Select][+][-]
  1.  
  2. unit Unit2;
  3.  
  4. {$mode objfpc}{$H+}
  5.  
  6. interface
  7.  
  8. uses
  9.   Classes, SysUtils,Forms,Controls, Graphics, Dialogs, StdCtrls;
  10. Type
  11.   TNumbercontrol = array of Integer ;
  12.  
  13.  
  14. function FCountControls(varform: TWinControl; AClass: TControlClass):TNumbercontrol;
  15.  
  16. implementation
  17.  
  18. function FCountControls(varform: TWinControl; AClass: TControlClass): TNumbercontrol;
  19. var
  20.   i: Integer; // i متغير للحلقة
  21. begin
  22.   for i := 0 to varform.ControlCount - 1 do
  23.   begin
  24.     // هذه الحلقة تقوم بالبحث عن الأدواة edit
  25.     // وسط أدوات الـفورم
  26.     if varform.Controls[i] is AClass then
  27.     begin
  28.       SetLength(FCountControls, Length(FCountControls) + 1);
  29.       // عند وجود أداة من نوع Edit يضيف رقم الترتيب للأداة في لوحة النصوص
  30.       FCountControls[High(FCountControls)] := i;
  31.     end;
  32.   end;
  33.  
  34. end;
  35.  
  36. end.
  37.  
  38.  

وهذا كود button

Code: Pascal  [Select][+][-]
  1.  
  2. procedure TForm1.Button1Click(Sender: TObject);
  3.  var i : Integer;
  4.   arry : array of Integer ;
  5.  
  6. begin
  7.   arry := FCountControls(form1,Tedit);
  8.  if Length(arry)>0 then
  9.  Begin
  10.  
  11.   for i := 0 to high(arry) do
  12.    Begin
  13.     Showmessage(Tbutton(form1.Controls[arry[i]]).Caption) ;
  14.    end
  15.  
  16.  end;
  17. end;                                          
  18.  

nouzi

  • Moderator
  • Full Member
  • *****
  • Posts: 240
Re: معرفة أدوات النموذج
« Reply #31 on: August 16, 2021, 04:59:04 pm »
العيد
العفو ، لا داعي لشكر كل هنا من أجل التعلم
اعدرني لم استطيع المشاركة في الشفرة لبعض الضروف،  انشاء الله نصائحي في الموضوع  كنت في مواضيعها ومفيدة
my english is  bad
Lazarus 2.0.6 free pascal 3.0.4
Lazarus trunk  free pascal trunk 
System : linux mint 19.3 64bit  windows 7 64bit

Zaher

  • Hero Member
  • *****
  • Posts: 648
    • parmaja.org
Re: معرفة أدوات النموذج
« Reply #32 on: August 16, 2021, 09:28:04 pm »
يرجى التخفيف من التشكرات و التبريك و المدح  والاقتصار على الامور المفيدة
على الاقل خفف ال qoute

 

TinyPortal © 2005-2018