delphi4arab منتديات دلفي للعرب
انشاء اجراء -procedure - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : انشاء اجراء -procedure (/showthread.php?tid=8958)



انشاء اجراء -procedure - samir28 - 21-10-2017

ابحث عن طريقة انشاء procedure أو fuction 
لتجنب تكرار الكود في الأزرار 
 الكود التالي : 

كود :
procedure TForm1.Button1Click(Sender: TObject); var canal:string;    op : Array of String; begin setlength(op,2); op[0]:=':aspect-ratio=4:3'; op[1]:='--rtsp-tcp'; VLCPlugin21.show; VLCPlugin21.playlist.stop; VLCPlugin21.playlist.clear; VLCPlugin21.playlist.add(canal,op[1],op[0]); VLCPlugin21.playlist.play; Edit1.Text:=canal-name; end;

الذي يتغير هو فقط canal
شكرا مسبقا


RE: انشاء اجراء -procedure - Agmcz - 21-10-2017

السلام عليكم
هل هكذا..
PHP كود :
type
  TForm1 
= class(TForm)
 
 private
    procedure MyProc
(const canal: string);
 
 public
    
{ Public declarations }
 
 end;

var
 
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.MyProc(const canal: string);
var
 
 op : Array of String;
begin
setlength
(op,2);
op[0]:=':aspect-ratio=4:3';
op[1]:='--rtsp-tcp';
VLCPlugin21.show;
VLCPlugin21.playlist.stop;
VLCPlugin21.playlist.clear;
VLCPlugin21.playlist.add(canal,op[1],op[0]);
VLCPlugin21.playlist.play;
Edit1.Text:=canal-name;
end; 



RE: انشاء اجراء -procedure - samir28 - 22-10-2017

لك مني ألف تحية أخي الكريم


RE: انشاء اجراء -procedure - kerbadou - 22-10-2017

حذاري فلربما لن تتمكن من الولوج لهذه الدالة من خارج اليونيت
لو تدرجها في Public تكون متاحة بصفة كاملة لكافة البرنامج

يمكنك كتابة Unit ووضع فيها كافة الاكواد الضرورية واستدعائها وذلك بتعريفها في منطقة Uses
قمت بكتابة Unit تحوي عدد كبيرا من الدوال الضرورية تعالج قواعد البيانات والرسائل وحركات الفورمز وكل ما احتاج اليه وبخاصة اوامر الاستعلام
استعملها منذ سنوات واقوم دوريا بتطويرها.