Delphi for delphier

Mouse – Fokuskan ke Control atau Object

Tingkatan Pemula
   
Kategori Dasar
   
Sub Kategori Mouse
   
Judul Fokuskan ke Control atau Object
   
Oleh
eko-indriyawan-png.png   Nama Eko Indriyawan
Domisili Surabaya – Darmo Satelit
Delphi Delphi 2007 for Win32
YM eko_elits
Email eko_elits@yahoo.com
Telp 031 – 605 384 36
   
Referensi http://delphi.about.com/od/adptips2005/qt/movemouse.htm
   
Tujuan
Mengajarkan kepada programmer pemula bagaimana cara memfokuskan mouse ke object yang kita pilih tanpa harus menggerakkan mouse dengan tangan.
   
Overview
Artikel ini sangatlah menarik, sebab kita bisa mengendalikan mouse untuk mengarahkan kursor ke object tanpa harus menggerakkan mouse dengan tangan.
Meskipun dalam pembahasan kali ini masihlah sederhana, namun contoh dalam artikel ini dengan penambahan bagian review dan pemantapan setidaknya akan membantu anda dalam memahi materi ini dengan baik dan lebih variatif.
Diharapkan dari contoh dan pembahasan dalam materi di artikel ini bisa membantu anda untuk mengerti dan memahami cara penggunaan mouse dan bisa memunculkan ide – ide lain yang lebih kreatif dan masih dalam ruang lingkup mempermudah program saat dioperasikan.
   
  Struktur fungsi ClientToScreen :
   
 
Mouse.CursorPos := ClientToScreen(<TPoint>) ;
   
 
Dari kode program diatas dapat dijelaskan sebagai berikut.
CursorPos = Property yang menunjukkan posisi dari mouse saat ini
ClientToScreen
=
Fungsi untuk mengarahkan kursor ke TPoint yang sudah ditentukan posisi x dan y nya.
TPoint = Posisi koordinat dengan parameter x dan y
   
Petunjuk :
Silahkan anda ikuti langkah – langkah berikut ini dengan pelan – pelan agar bisa berjalan dengan lancar sesuai dengan petunjuk yang sudah diberikan.
   
Langkah 1
   
Langkah 2
Tambahkan beberapa object kedalam Form
   
  Button2: TButton;
Edit1: TEdit;
Button1: TButton;
Label1: TLabel;
Bevel1: TBevel;
   
Langkah 3
Atur desainnya seperti berikut ditampilkan pada gambar form dibawah ini
   
 
mouse001.jpg
   
Langkah 4
Silahkan anda klik 2x pada bagian Form1. Setelah itu anda lanjutkan dengan menuliskan kode program didalam event OnCreateseperti terlihat pada potongan kode program dibawah ini.
   
 
procedure TForm1.FormCreate(Sender: TObject);
var
mousePos : TPoint;
focusControl : TControl;
begin
focusControl := ActiveControl;
if focusControl = nil then
begin
focusControl := Controls[0];
end;
ifthen
begin
mousePos.X := focusControl.Left + focusControl.Width div 2;
mousePos.Y := focusControl.Top + focusControl.Height div 2;
Mouse.CursorPos := ClientToScreen(mousePos) ;
end;
end;
   
Langkah 5
Silahkan anda compile. Tekan tombol Ctrl + F9.
   
 
Tunggu beberapa saat… ( Sedang di cek kode programnya )
 
Apabila tidak muncul pesan error, berarti program yang anda buat telah berhasil dan silahkan anda tekan tombol F9 untuk menjalankan program aplikasinya.
   
Langkah 6
Silahkan anda tekan tombol Proses
   
 
Program sudah selesai anda buat. Sekarang silahkan anda tekan tombol Keluar
Semoga artikel ini bisa bermanfaat. Silahkan anda berikan informasi ini kepada teman – teman anda yang belum tahu.
Mari kita wujudkan kemajuan IT Indonesia bersama dengan teman – teman yang lain dengan Delphi sebagai media pemupuk kebersamaan.
   
Review dan Pemantapan
Ada beberapa hal yang harus diperhatikan disini agar program yang anda jalankan sesuai dengan yang diharapkan. Oleh karena itu kita harus melihat beberapa karakteristik yang dimiliki oleh form agar anda tidak bingung apabila ketika anda mencobanya gagal.
Kondisi memfokuskan diatas didasarkan pada saat program akan dijalankan, oleh karena itu kita menempatkan kode program didalam event OnCreate. Pada kondisi ini ada beberapa aturan yang harus dipegang yakni tentang property Positionyang dimiliki oleh form. Usahakan untuk nilai property tersebut adalah nilai defaultnya. Dengan menggunakan acuan Delphi 2007, ketika anda mengubah property tersebut dengan nilai poDesktopCenter, maka secara langsung posisi yang dihasilkan TPoint akan tidak tepat pada kontrol yang sekarang sedang aktif.
Kemudian gimana cara mengatasi permasalahan ini ?
Caranya sangatlah mudah, silahkan kode program yang ada pada event OnCreate anda pindahkan ke event OnActivate. Untuk lebih detailnya silahkan lihat potongan kode program dibawah ini.
procedure TForm1.FormActivate(Sender: TObject);
var
mousePos : TPoint;
focusControl : TControl;
begin
focusControl := ActiveControl;
if focusControl = nil then
begin
focusControl := Controls[0];
end;
if focusControl <> nil then
begin
mousePos.X := focusControl.Left + focusControl.Width div 2;
mousePos.Y := focusControl.Top + focusControl.Height div 2;
Mouse.CursorPos := ClientToScreen(mousePos) ;
end;
end;
Dengan cara diatas, maka kondisi yang mungkin tadi tidak fokus ke kontrol sudah menjadi fokus.
Sekarang permasalahannya adalah gimana caranya kita ingin mengarahkan mouse tersebut ke object tertentu ?
Baiklah, caranya juga mudah, silahkan anda klik 2x pada tombol Button1dan isikan kode program seperti berikut dibawah ini.
procedure TForm1.Button1Click(Sender: TObject);
var
mousePos : TPoint;
begin
mousePos.X := Button2.Left + Button2.Width div 2;
mousePos.Y := Button2.Top + Button2.Height div 2;
Mouse.CursorPos := ClientToScreen(mousePos) ;
end;
Semoga penjelasan dari review dan pemantapan diatas semakin membuat anda paham dan mengerti akan materi ini dengan baik.
   
Download
Silahkan anda download link diatas untuk mendapatkan contoh program aplikasi secara lengkap.
Ada beberapa masukan dan keluhan dari teman – teman, bahwa ada beberapa program contoh tidak bisa dijalankan dari delphi 7. Hal ini dikarenakan program contoh dibuat dengan menggunakan Delphi 2007 for win32.
Apabila anda menggunakan D7, sebaiknya anda mengikuti pandauan dari langkah – langkah yang sudah diberikan.
Atas perhatiannya, saya mengucapkan banyak terimakasih.
   
Link terkait  
   
Buku panduan
Dasar First Step To Be A Programmer
Menengah Pemrograman Database dengan Delphi dan MS SQL Server
Menengah Membangun database MLM

2 Komentar

  1. Wah mantab kali artikelnya mas🙂
    Saya pengguna D7 and its work🙂 great tips mas🙂

    Komentar oleh Andi Eko — Januari 28, 2008 @ 8:42 am

  2. mas tlg gmn cara membuat instalan(membuat package instalan) pada delphi7 dan menggunakan database access

    Komentar oleh afif — Januari 28, 2008 @ 9:08 am


RSS feed for comments on this post.

Buat situs web atau blog gratis di WordPress.com.

%d blogger menyukai ini: