Q&A

  • DBGrid에 휠 마우스 적용하기?
안녕하세요.
디비그리드에 휠마우스를 적용하려고 하는데요..^^;

한 폼에 있는 디비 그리드는 되는데, 저는 폼이 여러개고 각 폼에 디비그리드가 1~2개씩 있습니다.

그런데 메인 폼에 있는 디비그리드는 정상적으로 되는데 나머지는
Indicator부분에 잔상이 남습니다.

procedure TMain_F.AnyMessage(var Msg: TMsg; var Handled: Boolean);
begin
   if Msg.Message = WM_MouseWheel then
   begin
      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;
         ActiveControl.Invalidate;
      end;
   end;
end;

소스는 이렇게 사용하는데 도저히 잡지를 못하겠네요..

방법 좀 알려주시면 감사하겠습니다.

그럼 즐프하세요..
3  COMMENTS
  • Profile
    김용택 2003.04.18 23:57
    procedure TFom1.DBGrid1KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
         DBGrid1.Refresh ;
    end;

    Refresh 해주면 될까?? 다른데서 본 것 같은데요..

  • Profile
    임진묵 2003.04.18 22:59
    저 같은 경우엔... 마우스 프로그램을 설치 했습니다.
    마우스 구입할때 주는 프로그램 있지 않습니까?

    제꺼는 '마이크로소프트 휠마우스' 인데요 cd 에 있는 걸 설치 하니까..
    디비그리드 안에서 자동적으로 휠이 작동 하던데요...
    이걸 설치 안했을때는... 화면 안에서만 인디케이터가 작동하더라구요...

    도움이 되시려는지.....

  • Profile
    김종인 2003.04.19 02:28
    가장 간단한 방법
    RxLib에 있는 그리드를 쓰면 됩니다.