########################### Son Düzenleme 22 Temmuz 2004 Perşembe - 09:32 unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Menus, ExtCtrls, Buttons, ImgList, TrayIcon; type TForm1 = class(TForm) blok_listesine_ekle: TButton; liste1: TListBox; surekli_prog_katlet: TButton; prog_kapat: TButton; Timer1: TTimer; liste2: TListBox; ListedenCikart: TButton; ayrintilar: TButton; basit: TButton; PopupMenu1: TPopupMenu; BlokListesineEkle1: TMenuItem; yukari_yolla: TSpeedButton; asagi_yolla: TSpeedButton; ListedenKaldir_liste1: TMenuItem; PopupMenu2: TPopupMenu; ListedenKaldir_Liste2: TMenuItem; BlokListesineEkle2: TMenuItem; dur: TButton; Timer2: TTimer; TrayIcon1: TTrayIcon; ImageList1: TImageList; PopupMenu3: TPopupMenu; ProgramiGoster_menu: TMenuItem; ProgramiKapat_menu: TMenuItem; TaramayiBaslat_menu: TMenuItem; TaramayiDurdur_menu: TMenuItem; ProgramiGizle_menu: TMenuItem; SpeedButton3: TSpeedButton; Listeyi_kaydet: TButton; listeden_yukle: TButton; Label1: TLabel; kisalt: TButton; Uzat: TButton; procedure blok_listesine_ekleClick(Sender: TObject); procedure FormCreate(Sender: TObject); procedure prog_kapatClick(Sender: TObject); procedure ayrintilarClick(Sender: TObject); procedure basitClick(Sender: TObject); procedure ListedenCikartClick(Sender: TObject); procedure surekli_prog_katletClick(Sender: TObject); procedure yukari_yollaClick(Sender: TObject); procedure asagi_yollaClick(Sender: TObject); procedure ListedenKaldir_liste1Click(Sender: TObject); procedure ListedenKaldir_Liste2Click(Sender: TObject); procedure durClick(Sender: TObject); procedure secClick(Sender: TObject); procedure ProgramiGoster_menuClick(Sender: TObject); procedure ProgramiKapat_menuClick(Sender: TObject); procedure SpeedButton3Click(Sender: TObject); procedure Listeyi_kaydetClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure ProgramiGizle_menuClick(Sender: TObject); procedure listeden_yukleClick(Sender: TObject); procedure kisaltClick(Sender: TObject); private { Private declarations } public end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.blok_listesine_ekleClick(Sender: TObject); var HFare : HWND; HSonrakiWinMsg:HWND; isaretleyici : TPOINT; baslikUzunlugu : integer; baslik : string; begin GetCursorPos(isaretleyici); HFare := WindowFromPoint(isaretleyici); if HFare = HSonrakiWinMsg then Exit; HSonrakiWinMsg := HFare; baslikUzunlugu := SendMessage(HFare, WM_GETTEXTLENGTH, 0, 0) + 1; SetLength(baslik, baslikUzunlugu); SendMessage(HSonrakiWinMsg, WM_GETTEXT, baslikUzunlugu,LongInt(@baslik[1])); if length(baslik) <> 1 then begin liste1.items.add(baslik) end else showmessage('Boş Başlık Ekleyemezsiniz - İmlecin Pencere başlığında olduğundan emin olun'); end; procedure TForm1.FormCreate(Sender: TObject); begin basit.click; listeden_yukle.click; end; procedure ProgramKapat(Baslik:String); Var h : THandle; begin h := FindWindow( nil, PChar(Baslik)); if h <> 0 then PostMessage(h, WM_CLOSE, 0, 0); end; procedure TForm1.prog_kapatClick(Sender: TObject); begin if not liste2.itemindex = -1 then begin ProgramKapat(liste2.items[0]); liste2.Items.Move(Liste2.ItemIndex,Liste2.Items.Count-1); end else begin end end; procedure TForm1.ayrintilarClick(Sender: TObject); begin uzat.visible:=false; ayrintilar.visible:=false; form1.borderstyle:=BsSingle; form1.height:=335; form1.width:=255; end; procedure TForm1.basitClick(Sender: TObject); begin ayrintilar.visible:=true; ayrintilar.top:=0; ayrintilar.left:=0; form1.borderstyle:=BsToolWindow; form1.height:=47; form1.width:=126; end; procedure TForm1.ListedenCikartClick(Sender: TObject); begin liste2.Items.Delete(liste2.itemindex); end; procedure TForm1.surekli_prog_katletClick(Sender: TObject); begin taramayibaslat_menu.enabled:=false; TaramayiDurdur_menu.enabled:=true; dur.enabled:=true; surekli_prog_katlet.enabled:=false; timer2.enabled:=true; timer1.enabled:=true; end; procedure TForm1.yukari_yollaClick(Sender: TObject); begin if liste2.itemindex = -1 then begin showmessage('Önce Listeden Program Seç'); end else begin liste1.items.Add(liste2.items[liste2.itemindex]); liste2.items.Delete(liste2.itemindex) end end; procedure TForm1.asagi_yollaClick(Sender: TObject); begin if liste1.itemindex = -1 then begin showmessage('Seç'); end else begin liste2.items.Add(liste1.items[liste1.itemindex]); liste1.items.Delete(liste1.itemindex) end; end; procedure TForm1.ListedenKaldir_Liste1Click(Sender: TObject); begin liste1.items.Delete(liste1.itemindex); liste1.itemindex:=0 end; procedure TForm1.ListedenKaldir_Liste2Click(Sender: TObject); begin liste2.items.Delete(liste2.itemindex); listeyi_kaydet.click; end; procedure TForm1.durClick(Sender: TObject); begin surekli_prog_katlet.enabled:=true; taramayibaslat_menu.enabled:=true; TaramayiDurdur_menu.enabled:=false; dur.enabled:=false; timer1.enabled:=false; timer2.enabled:=false; end; procedure TForm1.secClick(Sender: TObject); begin liste2.ItemIndex:=0; end; procedure TForm1.ProgramiGoster_menuClick(Sender: TObject); begin programigizle_menu.enabled:=true; programigoster_menu.enabled:=false; form1.show; end; procedure TForm1.ProgramiKapat_menuClick(Sender: TObject); begin form1.close; end; procedure TForm1.SpeedButton3Click(Sender: TObject); begin if liste1.itemindex = -1 then begin showmessage('Önce Blok Listesine Program Ekle'); end else begin liste2.items.add(liste1.Items[liste1.itemindex]); liste1.items.Delete(liste1.itemindex); listeyi_kaydet.click; prog_kapat.Click; end end; procedure TForm1.Listeyi_kaydetClick(Sender: TObject); begin liste2.items.savetoFile(extractfilepath(application.exename)+'kill.txt') end; procedure TForm1.FormShow(Sender: TObject); begin trayicon1.active:=true; end; procedure TForm1.ProgramiGizle_menuClick(Sender: TObject); begin programigizle_menu.enabled:=false; programigoster_menu.enabled:=true; form1.hide; end; procedure TForm1.listeden_yukleClick(Sender: TObject); begin if fileexists(extractfilepath(application.exename)+'kill.txt') then begin liste2.items.LoadFromFile(extractfilepath(application.exename)+'kill.txt') end else begin liste2.clear; listeyi_kaydet.click; end end; procedure TForm1.kisaltClick(Sender: TObject); begin uzat.visible:=true; form1.height:=form1.height - 160 end; end.