+1 800 256 3608 (toll-free in North America) or +49 7531 90 60 10| service@combit.com

PreviewControl - Tastatureingaben und Zoombug


(Philipp Winkel) #1

Hallo,
ich habe eine kurze Frage zu der PreviewControl Komponente unter List & Label 18, Delphi XE2.
Ich verwende sie um mein eigenes Vorschaufenster aufzubauen. Sobald ich dies öffne erhält das Control den Fokus und fängt sämtliche Tastatureingaben / Tastenkombinationen ab. Dieses Verhalten würde ich gerne abschalten, bzw. nur bestimmte Tasteneingaben das Control weiterleiten.
In der Unit cmbtLS18.pas befindet sich eine Konstante namens “LS_VIEWERCONTROL_QUEST_HOST_WANTS_KEY”, wobei ich annehme, dass das Setzen dieser Eigenschaft mein gewünschtes Verhalten erzeugt. Leider weiß ich nicht wie ich diese List & Label übergeben soll, auch die Dokumentation lieferte mir hierzu keine Ergebnisse. Versucht habe ich mein Glück schon mit einem SendMessage und dem Übergabe des PreviewControl-Handles, leider ohne Erfolg…

Mein zweites Anliegen ist ein kleiner Bug den ich beim direkten Setzen des Vorschauzoomes (SetZoom) gefunden habe. Bei Eingabe eines Wertes <100 wurde der Zoom auf ein Vielfaches vergrößert statt verkleinert. Abhilfe schafft es den letzten Parameter auf “1” zu setzen.

//unit l18
procedure TLl18PreviewControl.SetZoom(Percentage: integer);
begin
    // --> 05.09.2014 PW: Zoom auf Prozent korrigiert!!
    //SendMessage(handle,LS_VIEWERCONTROL_SET_ZOOM, Percentage, 0);
    SendMessage(handle,LS_VIEWERCONTROL_SET_ZOOM, Percentage, 1);
end;

Auf Antworten und Hilfestellungen freue ich mich jetzt schon!
Viele Grüße - klasse Forum hier :)!


(combit Support - Erdal Alacali) #2

Sehr geehrter Herr Winkel,
vielen Dank für Ihren Beitrag.

Zu der Tastatureingabe:
Sie müssten eine Messageloop abbilden in der LS_VIEWERCONTROL_QUEST_HOST_WANTS_KEY agbefragt wird und ein True zurückliefern, das sollte helfen.

Zu dem Zoomfaktor:
Bitte stellen Sie sicher das Sie das aktuellste Service Pack für die Version 18 verwenden, ansonsten tritt dieses Verhalten mit der Version 19 nicht mehr auf, wenn Sie nicht updaten können dann sollte der von Ihnen beschriebene Workaround ausreichen.

Mit freundlichen Grüßen

Erdal Alacali
Technischer Support
combit GmbH


(Philipp Winkel) #3

Vielen Dank für Ihre Antwort, ich werde dies demnächst testen.

Mit freundlichen Grüßen
Philipp