program sistemtray da iken bilgisayar kapanmıyor...
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
program sistemtray da iken bilgisayar kapanmıyor...
cooltrayicon komponetini kullanarak telefon rehberi yaptım.bilgisayar acılışında program system traye yerleşiyor bir sorun yok ama bilgisayar programım systemtraydeyken kapanmıyorm mauel olarak programı kapatmam lazım.. bu konuda bir fikri olan varsa yardımcı olabilrmi???.
Ölümden öteye köy yok!
Programınızın onclose yada onclosequery kısmında yazmış olduğunuz kodlar programınızın kapanmasını engelliyor olabilir. dolayısıyla windows programınıza kapanma isteği gönderince programınız olumsuz cevap veriyordur. Windows'da kapanmıyordur. Belirli bir süre geçince XP'nin görevini sonlandır demesi gerekir. 9x sistemlerde uyarmayabilir.
formun closequerysinde formun kapat düğmesinden kapatasın die aşagıdaki işlemi yaptıyorum....
biraz önceki örneği inceledim ama ben mesah falan cıksın istemiyorum direk kapansın istiyorum... yukarıdaki örnekerli inceledim ama hiçbirsey anlamadım acıkcası....
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose:=fgizle;
if not canclose then
begin
CanClose := False;
HideWindow1Click(Self);
end;
end;
biraz önceki örneği inceledim ama ben mesah falan cıksın istemiyorum direk kapansın istiyorum... yukarıdaki örnekerli inceledim ama hiçbirsey anlamadım acıkcası....
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose:=fgizle;
if not canclose then
begin
CanClose := False;
HideWindow1Click(Self);
end;
end;
Ölümden öteye köy yok!
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
CanClose:=False Yüzündendir
Merhaba. Bunun nedeni ~%99.99999 bir formda CanClose:=False olarak değer kalıyor. Bilgisayarın kapanabilmesi için formun ve programının kapanma anında bitirilmesi gerekir. Ben benzer bir durum yaşadım ve aşağıdaki şekilde giderdim.
Kapansın ilk başta False olarak ayarlanırsa formu kapatırken form sadece görünmez olacak ve program çalışmaya devam edecektir. Oturum kapatılırken bu değişken değeri True olur ve program kapanmaya engel olmaz. Kolay gelsin.
Kod: Tümünü seç
TFormAjanda = class(TForm)
..
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
private
Kapansin:Boolean;
procedure Cik;
procedure WMQueryEndSession(var Msg : TWMQueryEndSession); message WM_QUERYENDSESSION;
..
end;
procedure TFormAjanda.FormCloseQuery(Sender: TObject;var CanClose: Boolean);
begin
CanClose:=Kapansin;
if not Kapansin then Hide;
end;
procedure TFormAjanda.Cik; //formu kapatır
begin
Kapansin:=True;
Close;
end;
procedure TFormAjanda.WMQueryEndSession(var Msg: TWMQueryEndSession);
begin
Kapansin:=True;
inherited;
//Msg.Result := 1;
end;
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .