السلام عليكم ورحمة الله وبركاته ,,,
ما الفرق بين :
و
كود :
Application.Terminate;
وأيظا
مع انهم يؤدون نفس الغرض وهو الإغلاق ؟
وشكرا لكم جميعا

[COLOR="#000000"]
Close تغلق الForm
غلق الForm الاساسية يعني غلق التطبيق
Application.Terminate تنهي مهام التطبيق
halt توقف البرنامج المنفذ ويعود التنفيذ للنظام
الفرق بينهم ؟
استخدام Close في Form غير رئيسة لايوقف البرنامج وانما يغلق فقط الForm
إستخدام Application.Terminate أو Halt في أي Form رئيسية او لا كفيل بايقاف التطبيق
Halt عكس الاخرين لاتقوم بتحرير الموارد المستهلكة من طرف البرنامج وبالتالي قد تترك شوائب بالذاكرة
Halt تعمل في اي برنامج او تطبيق بواجهة GUI او حتى سطر اوامر Console عكس الاخرين فان كان برنامجك لا يحتوى Application لايمكنك استدعاء Terminate
والسلام عليكم[/COLOR]
بارك الله فيك ,,
اتضحت الصورة لدي
...وإذا وضعت أوامر في الحدث FormClose فإن البرنامج لن يمر عليها إذا تلقى Application.Terminate، ربما يمر عليه عند الحدث FormDestroy.
بالمناسبة ما معنى "تطبيق بواجهة gui" ؟؟؟
بسم الله الرحمن الرحيم
graphical user interface
تعني واجهات المستخدم الرسوميه اي الفورمات وصناديق الحوار.
والله روعة
جزاك الله خيراً
kachwahed كتب :لن يمر عليها إذا تلقى Application.Terminate، ربما يمر عليه عند الحدث FormDestroy.
شكرا لكن البرنامج لا يمر على اي حدث عند استعمال application.terminate جرب فورم و زر و لاحظ
كود :
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Application.Terminate;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
showmessage('samudsfjdfgn,,');
end;
end.
بينما لو استعملت HALTE فانه يعتر OnDestroy ولا يهتم بـ Onclose
السلام عليكم ورحمة الله
إقتباس :لا يمر على اي حدث عند استعمال application.terminate جرب فورم و زر و لاحظ
استبدل showmessage بشيء مثل:
الأمور ليست دائما كما تبدو 
الإجراء Terminate المعرف في المكتبة Forms يقوم باستدعاء [URL="http://msdn.microsoft.com/en-us/library/ms644945%28v=vs.85%29.aspx"]PostQuitMessage
[/URL]التي بدورها تجيب عن الرسالة WM_DESTROY معلنة عن إنهاء Thread البرنامج.