Einzelnen Beitrag anzeigen

ereetzer

Registriert seit: 21. Mär 2003
86 Beiträge
 
Delphi XE Starter
 
#5

Re: DBLookupCombobox Scrollen

  Alt 7. Apr 2008, 23:13
Hallo,
das Thema ist ja schon etwas älter, aber da ich gerade auch das Problem hatte in der DBLookupComboBox mit der Maus zu scrollen
und dazu hier keine Lösung außer eine eigene Komponente extra dafür gefunden hatte, hier mal die Lösung dazu: (also die Umsetzung von Union´s Vorschlag)


Als erstes Mal im OnCreate Ereignis des Hauptformulares wie folgt deklarieren:

  Application.OnMessage := self.HandleMousewheel; Dann eine Prozedur einfügen:

Delphi-Quellcode:
procedure TForm1.HandleMousewheel(var Msg: TMsg; var Handled: Boolean);
begin
   case Msg.message of
      WM_MOUSEWHEEL:
      begin
         if (Screen.ActiveForm.ActiveControl <> nil) and
            (Screen.ActiveForm.ActiveControl.ClassName = 'TDBLookupComboBox') then
         begin
            Msg.message := WM_KEYDOWN;
            Msg.lParam := 0;
            if Msg.wParam > 0 then
               Msg.wParam := VK_UP
            else
               Msg.wParam := VK_DOWN;
            Handled := False;
         end;
      end;
   end;
end;
Dann sollte das klappen.
  Mit Zitat antworten Zitat