PDA

View Full Version : کار با interface



مهدی فهمیده غلامی
سه شنبه 27 اردیبهشت 1384, 22:43 عصر
یک مثال ساده برای کار با interface که یک عمل خاص را تعریف کنه و در کلاس های
مشتق شده از اون interface پیاده سازی صورت بگیره می خوام

vcldeveloper
چهارشنبه 28 اردیبهشت 1384, 03:24 صبح
interface
uses
Dialogs;
type
IMyInterface = interface
['{081FFADD-51D0-45A7-8303-3D698165795B}']
procedure ShowSomething;
end;

TMyClass = class(TInterfacedObject, IMyInterface)
procedure ShowSomething;
procedure DoSomethingElse;
end;

implementation
{ TMyClass }
procedure TMyClass.DoSomethingElse;
begin
//DO something else
end;

procedure TMyClass.ShowSomething;
begin
ShowMessage('Interface method is implemented by TMyClass');
end;




procedure TForm1.Button1Click(Sender: TObject);
var
MyInterface : IMyInterface;
begin
MyInterface := TMyClass.Create;
MyInterface.ShowSomething;
end;

Delphi Skyline
چهارشنبه 28 اردیبهشت 1384, 12:15 عصر
['{081FFADD-51D0-45A7-8303-3D698165795B}']
اینجاش مال چیه ؟

مهدی فهمیده غلامی
چهارشنبه 28 اردیبهشت 1384, 21:04 عصر
کشاورز عزیز ممنون
اما چیزی که من میخواستم شما بهش اشاره میکردید اینه که یک تابع با پارامتری از نوع نامعلوم تعریف میکردید و در کلاس های بعدی اونو پیاده سازی میکردید
اگه میشه یه مثال ایجوری بزنید

vcldeveloper
پنج شنبه 29 اردیبهشت 1384, 02:26 صبح
اینجاش مال چیه ؟
GUID یک شماره هست که اون Interface رو منحصر بفرد میکنه. این شماره رو می تونید در دلفی با استفاده از Shift+Ctrl+G تولید کنید. در هنگام Copy/Paste کد یک Interface هیچوقت GUID اون رو کپی نکنید!!

Delphi Skyline
پنج شنبه 29 اردیبهشت 1384, 09:31 صبح
متشکرم .

Delphi Skyline
پنج شنبه 29 اردیبهشت 1384, 09:33 صبح
آقای کشاورز یک INTERFACE را باید کجا پیاده سازی کرد ؟
منظورم تو فرم خودمون است
یا اینکه به عنوان یک uses عمل می کنه
و یا .....


:flower:

vcldeveloper
پنج شنبه 29 اردیبهشت 1384, 19:20 عصر
آقای کشاورز یک INTERFACE را باید کجا پیاده سازی کرد ؟
یک Interface توسط class ایی که از اون ارث گرفته، پیاده سازی میشه.

برای آشنایی بیشتر با Interface ها می تونید درباره برنامه نویسی شپی گرا (OOP) مطالعه کنید

Delphi Skyline
پنج شنبه 29 اردیبهشت 1384, 21:47 عصر
برای آشنایی بیشتر با Interface ها می تونید درباره برنامه نویسی شپی گرا (OOP) مطالعه کنید
متشکرم . بهترین منبع ؟

:flower:

vcldeveloper
جمعه 30 اردیبهشت 1384, 01:36 صبح
بهترین منبع ؟
در سایت delphi.about.com مجموعه مقالاتی درباره Interface (در حد ابتدایی و خودآموز) دیده بودم. در کتاب Mastering Delphi 7 هم درباره Interface ها (و برخی مفاهیم شی گرایی) توضیح داده شده.

موفق باشید.

Delphi Skyline
جمعه 30 اردیبهشت 1384, 15:24 عصر
متشکرم از راهنمایی هایتان .
موفق باشید .
:flower: