구창민님의 팁입니다. 참조하시기 바랍니다.
---------------------------------------------------------------
안녕하세요~ 구창민입니다.
꽁수 코딩 삼만리 하다가.. 해결 했네요..^_^
이 넘의 DBGrid 가 지 맘대로 데이타셋의 이동과 무관하게
셀에다가 그리는 바람에 한참 혼돈스러웠네요.
강제로 키발생을 시켰더니 이젠 자알 됩니다.
그럼~ 항상 즐거운 프로그래밍 하시길~~~
procedure TMAinForm.FormCreate(Sender : TObject);
begin
Application.OnMessage:= AnyMessage;
end;
//-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
procedure TMainForm.AnyMessage(var Msg: TMsg; var Handled: Boolean);
begin
if Msg.Message = WM_Mousewheel then
if ActiveControl is TDBgrid then
begin
if Msg.wParam > 0 then
begin
keybd_event(VK_UP, VK_UP, 0, 0);
keybd_event(VK_UP, VK_UP, KEYEVENTF_KEYUP, 0);
end
else if Msg.wParam < 0 then
begin
keybd_event(VK_DOWN, VK_DOWN, 0, 0);
keybd_event(VK_DOWN, VK_DOWN, KEYEVENTF_KEYUP, 0);
end;
end;
end;
//-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
---------------------------------------------------------------
안녕하세요~ 구창민입니다.
꽁수 코딩 삼만리 하다가.. 해결 했네요..^_^
이 넘의 DBGrid 가 지 맘대로 데이타셋의 이동과 무관하게
셀에다가 그리는 바람에 한참 혼돈스러웠네요.
강제로 키발생을 시켰더니 이젠 자알 됩니다.
그럼~ 항상 즐거운 프로그래밍 하시길~~~
private
{ Private declarations }
procedure AnyMessage(var Msg: TMsg; var Handled: Boolean);
....
procedure TMAinForm.FormCreate(Sender : TObject);
begin
Application.OnMessage:= AnyMessage;
end;
//-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
procedure TMainForm.AnyMessage(var Msg: TMsg; var Handled: Boolean);
begin
if Msg.Message = WM_Mousewheel then
if ActiveControl is TDBgrid then
begin
if Msg.wParam > 0 then
begin
keybd_event(VK_UP, VK_UP, 0, 0);
keybd_event(VK_UP, VK_UP, KEYEVENTF_KEYUP, 0);
end
else if Msg.wParam < 0 then
begin
keybd_event(VK_DOWN, VK_DOWN, 0, 0);
keybd_event(VK_DOWN, VK_DOWN, KEYEVENTF_KEYUP, 0);
end;
end;
end;
//-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=