Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Win10 -> TListBox -> MouseWheel -> ausserhalb des Controls scrollen (https://www.delphipraxis.net/208668-win10-tlistbox-mousewheel-ausserhalb-des-controls-scrollen.html)

Uwe Raabe 3. Sep 2021 17:23

AW: Win10 -> TListBox -> MouseWheel -> ausserhalb des Controls scrollen
 
Zitat:

Zitat von Redeemer (Beitrag 1494136)
Dürfte auch nicht gehen, denn Windows wird sicher nicht bei jedem Scrollen in der Registry nachgucken, ob das jetzt an oder aus ist.

Ich meine auch, man muss sich mindestens einmal ab- und anmelden damit das wirkt.

Der schöne Günther 3. Sep 2021 17:48

AW: Win10 -> TListBox -> MouseWheel -> ausserhalb des Controls scrollen
 
Was kommt als nächstes? Dem Benutzer die Bildschirmauflösung oder DPI-Skalierung ändern weil das dem Programm besser passt?

Wenn, dann ist der richtige Weg die entsprechenden Messages abzufangen.

MyRealName 5. Sep 2021 10:36

AW: Win10 -> TListBox -> MouseWheel -> ausserhalb des Controls scrollen
 
Ok, danke, das hatte ich befürchtet.
Ich hatte nur gehgofft, dass es da was gibt, weil die Winforms von DevExpress sowas können. Die haben so eine Property SmartMouseWheelProcessing, da geht es genau um diese Einstellung

Uwe Raabe 5. Sep 2021 11:46

AW: Win10 -> TListBox -> MouseWheel -> ausserhalb des Controls scrollen
 
Ich vermute mal, die fangen die Scroll-Messages im Form ab und verteilen die dann entsprechend. Das funktioniert ja auch nur mit ganz bestimmten DevExpress-Form-Typen.

dummzeuch 5. Sep 2021 15:45

AW: Win10 -> TListBox -> MouseWheel -> ausserhalb des Controls scrollen
 
Zitat:

Zitat von dummzeuch (Beitrag 1494135)
Das Problem sollte sich aber beheben lassen, in dem man im Formular die Wheel-Messages abfängt und an die Listbox weiterleitet. Man muss nur aufpassen, dass sie dann nicht doppelt verarbeitet werden, wenn die Listbox den Focus hat.

Manchmal habe ich das Gefühl, ich bin hier im Spam-Filter gelandet, weil gefühlt die meisten meiner Beiträge ignoriert werden.

Oder ist diese Lösung zu kompliziert?

Papaschlumpf73 5. Sep 2021 16:54

AW: Win10 -> TListBox -> MouseWheel -> ausserhalb des Controls scrollen
 
Zitat:

Zitat von dummzeuch (Beitrag 1494170)
Zitat:

Zitat von dummzeuch (Beitrag 1494135)
Das Problem sollte sich aber beheben lassen, in dem man im Formular die Wheel-Messages abfängt und an die Listbox weiterleitet. Man muss nur aufpassen, dass sie dann nicht doppelt verarbeitet werden, wenn die Listbox den Focus hat.

Manchmal habe ich das Gefühl, ich bin hier im Spam-Filter gelandet, weil gefühlt die meisten meiner Beiträge ignoriert werden.

Oder ist diese Lösung zu kompliziert?

Vielleicht liegt’s ja an deinem Namen. Obwohl, ich finde den super 😂

tomkupitz 5. Sep 2021 17:31

AW: Win10 -> TListBox -> MouseWheel -> ausserhalb des Controls scrollen
 
Etwas Quelltext:

Code:
procedure TMainForm.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);
begin
  if Msg.message=WM_MOUSEWHEEL then
  begin
    SendMessage(ListBox1.Handle, WM_MOUSEWHEEL, Msg.wParam, Msg.lParam);
    Handled:=True;
  end;
end;
Du kannst ggf. mit PtInRect noch prüfen in welchem Breich das so laufen soll.

Beste Grüße

Uwe Raabe 5. Sep 2021 17:54

AW: Win10 -> TListBox -> MouseWheel -> ausserhalb des Controls scrollen
 
Wäre da GetFocus anstatt ListBox1.Handle nicht etwas generischer? Sonst wirkt das Scrollen ja immer nur in der ListBox.

TiGü 6. Sep 2021 08:56

AW: Win10 -> TListBox -> MouseWheel -> ausserhalb des Controls scrollen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von dummzeuch (Beitrag 1494170)
Zitat:

Zitat von dummzeuch (Beitrag 1494135)
Das Problem sollte sich aber beheben lassen, in dem man im Formular die Wheel-Messages abfängt und an die Listbox weiterleitet. Man muss nur aufpassen, dass sie dann nicht doppelt verarbeitet werden, wenn die Listbox den Focus hat.

Manchmal habe ich das Gefühl, ich bin hier im Spam-Filter gelandet, weil gefühlt die meisten meiner Beiträge ignoriert werden.

Oder ist diese Lösung zu kompliziert?

Das kenn ich auch gut!

Man postet die Lösung und trotzdem werden weiterhin Beiträge mit nicht passenden Lösungen oder sogar der fast gleichen Lösung geschrieben.

(Also jetzt mal unabhängig zu meiner Registry-Idee, die wirklich nur als dreckiger Workaround verstanden werden sollte)

Anhang 54284

Delphi.Narium 6. Sep 2021 09:14

AW: Win10 -> TListBox -> MouseWheel -> ausserhalb des Controls scrollen
 
Sagen wir mal so:

Um den ersten korrekten Lösungsvorschlag als solchen zu erkennen, muss das Problem soweit verstanden sein, dass dieser Lösungsvorschlag als korrekt erkannt werden kann.

Ist dem nicht so, werden alternative Lösungsvorschläge gesucht. Dabei wird sich langsam aber sicher soweit in die Materie eingearbeitet, dass zu einem späteren Zeitpunkt dann ein identischer Vorschlag als korrekter Lösungvorschlag erkannt werden kann.

Pflapsig formuliert:

Ihr seid mit Euren korrekten Lösungsvorschlägen manchmal einfach nur zu schnell,
oder Ihr seid mit Euren Lösungsvorschlägen der Zeit weit voraus ;-)

Es ist halt ein allgemeines menschliches Problem:

Lieber lernt man aus eigener Erfahrung und eigenem "Aufdiefressefallen", als (blind) auf die Erfahrungen anderer zu vertrauen.
Nennt man auch: Lebenserfahrung sammeln.

Wie z. B. die heiße Herdplatte. Das sie heiß ist, erfährt man als Kind nicht, weil andere es sagen, sondern weil man sich die Finger verbrannt hat.

Ist einfach so, kein Grund zur Aufregung, kein Grund sich ignoriert zu fühlen, ist nur der normale tägliche Wahnsinn ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:36 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz