Mouseover

Grafische Primitive, XbaseParts und Darstellungsfragen allgemein.

Moderator: Moderatoren

Antworten
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Mouseover

Beitrag von Manfred »

gegeben sind 2 Browserfenster. Ist es mit herkömmlichen Mitteln möglich, wenn die Maus zwischen den beiden Browsern wechselt ohne Mausklick, das der jeweilige Browser über dem die Maus gerade steht aktiv wird? Derzeit ist es so, das der linke Browser aktiv ist, wenn ich jetzt im rechten Browser in den Header klicke mit der rechten Maustaste zum Sortieren, dann wird der zwar sortiert, wenn aber am Mausrad gedreht wird, dann bewegt sich der linke Browser. Das ist ein wenig nervig.
In der Anleitung habe ich was dazu gefunden, aber das sieht mir nach ActiveX aus und das wollte ich nicht benutzen.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Marcus Herz
1000 working lines a day
1000 working lines a day
Beiträge: 851
Registriert: Mo, 16. Jan 2006 8:13
Wohnort: Allgäu
Hat sich bedankt: 39 Mal
Danksagung erhalten: 192 Mal
Kontaktdaten:

Re: Mouseover

Beitrag von Marcus Herz »

Hallo Manfred

Setze SetAppFocus(<obrowse>) mit in den Header Block

Code: Alles auswählen

:headerRbDown := {| aMousePos, nColPos, self | SteAppFocus(<obowse>),  <dein jetziger code>  }
So weit ich weiß, wird das Mausrad immer an das focussierte Objekt gesendet
Gruß Marcus

Erkenne, was du findest, dann weißt du, wonach du gesucht hast
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: Mouseover

Beitrag von Tom »

Wenn ich zwei nichtmodale Fenster nebeneinanderstelle, reagiert immer das Browse auf das Mausrad, über das ich die Maus halte. Es ist nicht nötig, einem Browse oder dem Fenster den Fokus zu geben. Das gilt aber nur für Anwendungen, die mit Xbase++ 2.0 kompiliert wurden. Und, Achtung, die Windows-Mauseinstellung "Inaktive Fenster beim Draufzeigen scrollen" muss AN sein. Wenn man 1.9SL1-Anwendungen hat, muss sie wiederum aus sein, sonst geht das mit dem Mausrad nur direkt über dem Scrollbalken.
inaktivefenster.png
inaktivefenster.png (184.24 KiB) 2626 mal betrachtet
Herzlich,
Tom
Benutzeravatar
Marcus Herz
1000 working lines a day
1000 working lines a day
Beiträge: 851
Registriert: Mo, 16. Jan 2006 8:13
Wohnort: Allgäu
Hat sich bedankt: 39 Mal
Danksagung erhalten: 192 Mal
Kontaktdaten:

Re: Mouseover

Beitrag von Marcus Herz »

In der Xbase++ Hilfe steht noch:
The xbeM_Wheel event is always sent to the Xbase Part that has input focus, no matter whether or not the mouse pointer is located within or outside the area of the Xbase Part
Das stimmt ja nicht mehr..
Gruß Marcus

Erkenne, was du findest, dann weißt du, wonach du gesucht hast
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: Mouseover

Beitrag von Tom »

Ja, Marcus, das stimmt nicht mehr.

In der 1.9SL1 ist es so, dass ein XbpBrowse immer mit dem Mausrad scrollt, wenn es den Fokus als Control hat, und zwar ganz unabhängig davon, wo die Maus gerade hinzeigt. Das stimmt aber unter Windows 10 nur, wenn die o.g. Einstellung aus ist. Wenn sie an ist, scrollt das XbpBrowse nur noch, wenn man die Maus direkt über den vertikalen Scrollbalken hält.

In der 2.0 scrollt ein Browse immer, wenn die Maus gerade über ihm hovert und das Scrollrad verwendet wird, ganz unabhängig davon, ob das Fenster oder das Browse Fokus haben. Das stimmt aber nur, wenn die genannte Einstellung an ist. Wenn sie aus ist, verhält es sich wie unter 1.9SL1.
Herzlich,
Tom
Antworten