Arsip: Aplikasi nutup secara otomatis

 
user image
more 17 years ago

fatahjunaidi

Gue mau nanya nich, gimana caranya buat program agar bila program tsb bila tidak tersentuh user / tidak dipakai dalam kurun waktu tertentu (misal 3 menit) akan shutdown secara otomatis. (Maksudnya Application Terminate gitu loh). Mungkin teman teman bisa bantu gue dong ? Please ...
user image
more 17 years ago

ZeAL

Logika aja yah.. pake timer aja... intervalnya misalnya 1 detik (1000).. Nanti ada variabel counter untuk selalu bertambah tiap 1 detik.. Nah, counter akan direset kembali menjadi 0 jika user melakukan sebuah aksi (pencet tombol/klik-klik/dsb).. Jika counter mecapai angka 180 (3 x 60 detik), maka matikan apliaksi.. pake aja application.terminate; (eh, apa application.destroy.. yah?? lupa)... atau pake Halt(1) juga bisa... Gimana? ngerti kan maksudnya.. yang susah itu nentuin apakah user masih aktif atau tidak... GudLuck!
user image
more 17 years ago

light_cc80

nambahin logikanya zeal nih.. ^_^ Untuk nentuin apakah user masih aktif ato ga.. lo bisa coba dapatin handle window apa yang sedang aktif sekarang. Nah.. klo bukan window aplikasi lo yang aktif.. berarti tinggal lo jalanin counter/timernya.. gudLuck ^_^
user image
more 17 years ago

deLogic

atau bisa gini... pake OnActivate & OnDeactivate di form. Pas di event OnActivate, set Timer menjadi True, Pas di event OnDeactivate, set timer jadi False, dan reset counter nah unutk masalah counter, sama persis dengan yang udah dijelaskan oleh bung ZeAL. nah masalahnya adlah mendeteksi apakah idle atau gak. Status idle ini mungkin tidak ada penekanan tombol atau klik mouse pada aplikasi tersebut ya..?? oke, mungkin bisa pake windows API, jadi kita harus nyeleksi message yang masuk, jika ternyata penekanan tombol atau klik mouse, maka counter harus di-reset, jika tidak, ya counter tetep jalan terus. gimana....? soalnya belum dicoba sih.. kekeke...
user image
more 17 years ago

tox2wow

Hmm, nambahin juga nih. Coba bikin even di Form.OnMouseMove, artinya, jika posisi mouse awal masih sama dengan posisi mouse akhir, panggil prosedur Application.Terminate. Serta, sediakan timer untuk menentukan dalam berapa lama prosedur Application.Terminate akan di panggil. Algoritmanya kira2 sebagai berikut :

//sediakan variabel global untuk menampung nilai waktu bagi timer
var
 W : integer;
//saat form aktif/ditampilkan, aktifkan timer
procedure Form1.OnShow(bla bla bla)
 begin
  W := 0;
  Timer1.Enabled := true;
 end;
//prosedure increment nilai waktu di dalam timer
procedure Timer1.Timer(bla bla bla) {bener ga ni ya ??? lupa sih..heheh}
 begin
  W := W + 1;
  if W > 60 then
   W := 0;
 end;
//Mengambil posisi mouse awal pada even Form.OnMouseMove
procedure Form1.OnMouseMove(bla bla bla)
var
 T : TPoint;
 T1,T2,T3,T4 : Integer;
begin
 GetCursorPos(T);
 T1 := T.X;
 T2 := T.Y;
 if W >= 60 then
  begin
   GetCursorPos(T);
   T3 := T.X;
   T4 := T.Y;
   if (T1 = T3) and (T2 = T4) then
    Application.Terminate;
  end;
end;
Well, itu baru logika gw aja sih, belom di coba, heheh ... :P . Kalau ga berhasil, yaaa ... di modif2 dikit lahhhh ... kekekekeke :lol:
more ...
  • Pages:
  • 1
Share to

Random Topic

Local Business Directory, Search Engine Submission & SEO Tools FreeWebSubmission.com SonicRun.com