Logout Otomatis ketika tidak ada aktivitas
Logout Otomatis ketika tidak ada aktivitas
Sudah lama sekali tidak melatih “logika” dg membuat hal-hal kecil namun cukup menarik. Kemaren ada teman yang masih belajar pemrograman sharing kepada saya. Bagaimana tipsnya membuat program logout atau nge-close secara otomatis apabila user tidak melakukan aktivitas pada aplikasi yang sedang di jalankan ? Karena saat itu tanyanya di chatting dan saya sedang sibuk kerjaan di client, saya menajanjikan kalau sudah agak longgar aku bantu coba kasih tips. Saat itu memang hanya sekedar saran, supaya memanfaatkan Ttimer dan event OnMouseMove. Namun sudah 2 hari karena kesibukan aku belum juga mencoba membuat codingnya, hanya sekedar angan-angan saja. Karena saya sudah janji maka malam ini , aku coba utak atik sebentar.
Kebetulan malam ini turun hujan sejak sore tadi. Memanjakan mata dan tubuh ini seolah-olah menyuruh cepat nyungsep ke balik selimut hangat di ranjang tercinta. Namun godaan untuk membuat program kecil logout itu lebih kuat daripada godaan sang kasur yg melambai-lambai sejak turun hujan sore tadi. Kubuat dulu secangkir segelas milo yg aku campur dengan kopi Berontoseno kopi favoriku, tubuh semakin bergairah memulai coding.
Sebagai pemuka aku susun dulu mp3 ku utk mengiringi aktivitas di depan lapop. Aku pilih lagu-lagu lawas kumpulan Atiek CB , Nicky Astrea , Chrisye and Broery Marantika, serasa dibawa ke era tahun 80an. Jadi memprogram sambil mengenang masa lalu. Asyikk betul…. (ssstt apalagi istri dan anak sudah terlelap tidur, met bobo ya Nak..semoga mimpi indah).
Back to Coding :
Buat program kecil seperti ini adalah hobyku sejak dulu ketika masih belajar dari awal ttg
Begini ceritanya : user dinyatakan tidak melakukan aktifitas ketika tidak ada pergerakan mouse , dan saat itu program akan langsung menghitung sampai detik keberapa yg kemudian langsung menjalankan perintah off . Namun apabila ditengah hitungan ada pergerakan mouse maka nilai detik jadi 0 kembali.
Ini source code lengkapnya :
unit u_logout;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ExtCtrls;
type
Tf_logout = class(TForm)
sb1: TStatusBar;
Timer1: TTimer;
procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Timer1Timer(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
f_logout: Tf_logout;
xlama,ylama,xbaru,ybaru:integer;
detik:integer;
implementation
{$R *.dfm}
procedure Tf_logout.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
sb1.SimpleText:=inttostr(X)+' : '+inttostr(Y);
xbaru:=x;
ybaru:=y;
end;
procedure Tf_logout.Timer1Timer(Sender: TObject);
begin
if (xlama=xbaru) and (ylama=ybaru) then
begin
inc(detik);
if detik=20 then
begin
MessageDlg('Tutup', mtWarning, [mbOK], 0);
close;
end;
end else
begin
xlama:=xbaru;
ylama:=ybaru;
detik:=0;
end;
end;
procedure Tf_logout.FormShow(Sender: TObject);
begin
xlama:=0;
ylama:=0;
detik:=0;
end;
end.
Nah, kalian bisa lihat sendiri dan pelajari lebih lanjut. Silakan dipraktekkan.
Karena otak sudah mulai panas, kulanjutkan lagi ngerjakan proyek.
Sampai jumpa di lain tips.
--Hendrik--
3 komentar:
wah makasih banget mas...
ditunggu nih tips dan trik selanjutnya....
ok. thanks. kasih kasus aja yg ringan2 yg mungkin bisa aku share
luxury replica bags DGQBV best replica bags online GIQW best replica bags online GIRW
Posting Komentar