delphi4arab منتديات دلفي للعرب

نسخة كاملة : كيف ربط متغير مع ملف dll
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم اخواني الاعزاء

كيف يتم ربط متغير مع ملف dll

بهذه الصوره

كود :
procedure GetValue(_Level:Integer);Stdcall;export;

هذا الاجراء موجود في ملف DLL


و عندما استخدمة اقوم بوضع متغير

var

كود :
var _int : Integer;

كود :
GetValue(_int)

و الان كيف يتم تحويل القيم للمتغير

_int


و شكرا لكم
اخي انت تستعمل procedure الاصح ان تستعمل function لانها تعطيك مرجعات بعد نداء عليهاا
Anew كتب :
كود :
var _int : Integer;

كود :
GetValue(_int)

و الان كيف يتم تحويل القيم للمتغير

_int

وعليكم السلام و رحمة الله

بالاضافة إلى ملاحظة الأخ هوديني, لماذا تود تمرير قيمة للمتغير VAR لماذا لا تطبق الدالة مباشرة على القيمة التي تريد
مثلا للعدد 6 تكتب :
كود :
GetValue(6);

مثال آخر بالنسبة لقيمة نصية :
كود :
GetValue(strtoint(edit1.text));
;

و الله سبحناه و تعالى أعلم
اخواني الافاضل

الطريقه هية

يتم تخزين القيم التي يتلاعب بها داخل الاجراء و يمررها للمتغير _int

اما عن طريقة function

فلا تعطيك اكثر من واحد

فماذا لو كان لدي متغيرين او اكثر ؟

و بارك الله بالجميع
Anew كتب :اخواني الافاضل

الطريقه هية

يتم تخزين القيم التي يتلاعب بها داخل الاجراء و يمررها للمتغير _int

اما عن طريقة function

فلا تعطيك اكثر من واحد

فماذا لو كان لدي متغيرين او اكثر ؟

و بارك الله بالجميع

أمامك حلان التمرير بال var أو استعمال المؤشرات :
PHP كود :
procedure GetValue(var X: Integer);
begin
  inc
(X);
end;

procedure GetValue2(X: PInteger);
begin
  inc
(X^);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  
A: Integer;
begin
  A 
:= 6;
  
GetValue(A);
  
Caption := IntToStr(A); // 7 .
  
GetValue2(@A);
  
ShowMessage(IntToStr(A)); //8 .

end; 
الف شكر لجميع على المساهمة و لكن تم حل المشكله بوضع وصيت من نوع TrackBar

للفائدة لمن يحتاجها

نقوم بوضع تريك بار على الفروم

كود :
procedure GetValue(X: TTrackBar); begin x := 100 Div 5; end;

و بتالي اي قيم تدخل الى X

سيقوم بتحويلها الى التريك بار
=========================

و بارك الله في الجميع و لمن شارك معنا