17-06-19, 05:51 PM
السلام عليكم ورحمة الله
هنا وحدة كاملة للمشروع كما بالشكل التالي :
يجب ان تنتقل الى اعلى الوحدة وفي الترويسة Type تكتب وتعرف الدالة التي تريدها كما بالشكل التالي:
لاحظ ان الدالة اسمها Sum وتطلب لنفسها متغيرين من نوع Integer والقيمة العائدة هي Integer كما نشير لها في نهاية الدالة
الان اما ان تنتقل الى جسم الوحدة وبعد implementation وتكتب الدلة بنفسك واما وانت على نفس المكان الذي عرفت فيه الدالة تنقر المفاتيح الثلاثة مع بعض
Ctrl + Sheft + C ليكتبها محرر الكود عنك .
وتكتب فيها البرمجة التي تريد .
لاحظ اننا وضعنا على النموذج مكون النص وزر وفي حدث النقر للزر كتبنا التالي :
وهنا ارسلنا رقمين .
ولكن لاحظ الدلفي لا يتساهل مع المتغيرات فانت لا تستطيع ان تضع رقم بداخل اداة نص او ان تضع نص برقم
العبث الذي يقوم به الفيجوالبيسك والفجوالبيسك دوت نت لا وجود له هنا
وعليه يجب ان تحول من رقم الى نص بواسطة ToString او باستخدام الطريقة القديمة كما بالشكل التالي:
وهي دالة تعني من رقم الى نص .
بحال اردت ان تترك احد المتغيرات اختياري وتضع له قيمة ثابتة سيكون كالتالي:
ولو استخدمت الاستدعاء التالي فلن يحدث خطاء وسيحتسب الرقم الثابت الذي اعطيته
اما الاجراءات فبنفس الطريقة ، عدا انها لا تعود بقيمة وانما يتم تنفيذها فقط .
لتحميل المثال
[attachment=21742]
هنا وحدة كاملة للمشروع كما بالشكل التالي :
كود :
unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
function Sum(int1,int2:integer):integer;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
edit1.Text:= Sum(5,6).ToString()
end;
function TForm1.Sum(int1, int2: integer): integer;
begin
//
Result := int1 + int2;
end;
end.يجب ان تنتقل الى اعلى الوحدة وفي الترويسة Type تكتب وتعرف الدالة التي تريدها كما بالشكل التالي:
كود :
function Sum(int1,int2:integer):integer;لاحظ ان الدالة اسمها Sum وتطلب لنفسها متغيرين من نوع Integer والقيمة العائدة هي Integer كما نشير لها في نهاية الدالة
الان اما ان تنتقل الى جسم الوحدة وبعد implementation وتكتب الدلة بنفسك واما وانت على نفس المكان الذي عرفت فيه الدالة تنقر المفاتيح الثلاثة مع بعض
Ctrl + Sheft + C ليكتبها محرر الكود عنك .
وتكتب فيها البرمجة التي تريد .
لاحظ اننا وضعنا على النموذج مكون النص وزر وفي حدث النقر للزر كتبنا التالي :
كود :
edit1.Text:= Sum(5,6).ToString()وهنا ارسلنا رقمين .
ولكن لاحظ الدلفي لا يتساهل مع المتغيرات فانت لا تستطيع ان تضع رقم بداخل اداة نص او ان تضع نص برقم
العبث الذي يقوم به الفيجوالبيسك والفجوالبيسك دوت نت لا وجود له هنا
وعليه يجب ان تحول من رقم الى نص بواسطة ToString او باستخدام الطريقة القديمة كما بالشكل التالي:
كود :
edit1.Text:= IntToStr(Sum(5,6))وهي دالة تعني من رقم الى نص .
بحال اردت ان تترك احد المتغيرات اختياري وتضع له قيمة ثابتة سيكون كالتالي:
كود :
function Sum(int1:integer;int2:Integer=9):integer;ولو استخدمت الاستدعاء التالي فلن يحدث خطاء وسيحتسب الرقم الثابت الذي اعطيته
كود :
edit1.Text:= Sum(5).ToString()اما الاجراءات فبنفس الطريقة ، عدا انها لا تعود بقيمة وانما يتم تنفيذها فقط .
لتحميل المثال
[attachment=21742]