Jumat, 24 April 2009

cara buat DBGrid biar bisa di scroll..!!!

Buat temen2 yang pernah buat program ato lagi buat program pakek delphi, terkadang di komponen DBGridnya ntu kalo recordnya banyak kan gak bisa di scrol pakek mouse, bisanya kita pakek tombol page down untuk turun ato page up buat naek, kadang oang yang kita buatin program ntu kan males pakek tombol, maunya pakek mouse...!!


gimana caranya biar bias di scroll....????



ni perintah di tulis ja ato di copy paste kalo males ngetik sih...
pas di bagian public tulis perintah ne:
procedure AppMessage(var Msg: TMsg; var Handled: Boolean);

trus tulis yang ne dibawah Implementasi

procedure TForm1.AppMessage(var Msg: TMsg; var Handled: Boolean);
var
a: byte;
begin
if Msg.message = WM_MOUSEWHEEL then
begin
Msg.message := WM_KEYDOWN;
Msg.lParam := 0;
a := HiWord(Msg.wParam);
if a > 0 then
Msg.wParam := VK_UP else
Msg.wParam := VK_DOWN;
Handled := False;
end;
end;

trus di projectnya tambahin perintah ne (sebelum --> Application.Run;)
Application.OnMessage :=Form1.AppMessage;



selamat mencoba.... thank

10 komentar:

Basyarah mengatakan...

sangat berguna info nya, thanks

Anonim mengatakan...
Komentar ini telah dihapus oleh administrator blog.
Anonim mengatakan...
Komentar ini telah dihapus oleh administrator blog.
Anonim mengatakan...

mas bro, Application.OnMessage :=Form1.AppMessage;
simpannya dimana? trims

Andris Faesal mengatakan...

untuk perintah Application.OnMessage :=Form1.AppMessage; dicopy di file projectnya (tekan Ctrl+F12 trus cari nama projectnya lalu dibuka) nah di copy perintah ntu sebelum kodding Application.Run;

Anonim mengatakan...

mas bro saya jalankan kok keluar range check error, gimana solusinya.
trims.

Andris Faesal mengatakan...

Anonim : kalo boleh tau lokasi errornya di sebelah mana yah..??

Anonim mengatakan...

ko scroll nya cuma ke atas kalo mau kebawah juga gimana caranya? mohon pencerahannya

Anonim mengatakan...

Kebawahnya gak bisa

Anonim mengatakan...

Nih biar bisa turun naem scroll nya :

procedure TForm1.AppMessage(var Msg: TMsg; var Handled: Boolean);
var
i: SmallInt;
begin
{Mouse wheel behaves strangely with dgbgrids - this proc sorts this out}
if Msg.message = WM_MOUSEWHEEL then
begin
Msg.message := WM_KEYDOWN;
Msg.lParam := 0;
i := HiWord(Msg.wParam);
if i > 0 then
Msg.wParam := VK_UP
else
Msg.wParam := VK_DOWN;
Handled := False;
end;
end;

Poskan Komentar

makasih ya dah mampir....!!!! ^_^