| |
Fragen & Antworten rund um sev-KomponentensevMenuXP: Hotkeys lösen aus, wenn Formular nicht den Fokus hat | | | Autor: Danny Grobe | Datum: 03.08.16 09:55 |
| Hallo Dieter,
folgendes Phänomen ist bei uns aufgetreten. Angenommen du hast eine sevMenuBar auf einem Formular und darin auch Hotkeys hinterlegt. Dann lässt du eine MsgBox aufgehen wenn ein Benutzer einen Button auf dem Formular anklickt. Während die MsgBox geöffnet ist, und man einen Hotkey drückt, wird dieser Hotkey verarbeitet, obwohl die MsgBox den Fokus hat.
Dieses Phänomen tritt aber nur zur Laufzeit in der EXE auf und nicht in der VB6 IDE. Leider gab es dadurch nur schwer nachvollziehbare Probleme, die zum Glück jetzt erstmal umgangen werden können, indem ich prüfe, ob das zugehörige Formular auch den Fokus hat.
Ein Beispielprojekt hab ich dir auch wieder erstellt:
https://www.dropbox.com/s/mcqgagf7b4au2mw/sevMenuXP.zip?dl=0
Gruß,
Danny | |
Re: sevMenuXP: Hotkeys lösen aus, wenn Formular nicht den Fokus hat | | | Autor: Danny Grobe | Datum: 03.08.16 11:43 |
| Ich hoffe, es ist nichts kompliziertes? Der Workaround zur Vermeidung des Bugs müsste theoretisch in jeder Maske mit der sevMenuBar implementiert werden, was ein sehr großer Aufwand währe. | |
Re: sevMenuXP: Hotkeys lösen aus, wenn Formular nicht den Fokus hat | | | Autor: Franki | Datum: 10.08.16 01:21 |
| Hallo Danny,
ich habe mir dein Beispeilprojekt jetzt zwar nicht angesehen sondern bei einem meiner Projekte mal nachgestellt für einen Test. Ok, du hast recht, bei mir ist das ähnlich, es hätte theoretisch schon immer Userbeschwerden geben können.
Aber andererseits, wie wahrscheinlich ist es, dass ein User einen Hotkey verwendet wenn eine modale MSG-Box angezeigt wird? Denn die hat ja nun mal dann den Fokus, das kennen die User, Mausklicks ausserhalb sind auch wirkungslos. Also alles im grünen Bereich...
Was für eine Konstellation in deinem Programm hast du denn, dass du überhaupt auf dieses Problem aufmerksam geweorden bist?
Gruß
Frank | |
Re: sevMenuXP: Hotkeys lösen aus, wenn Formular nicht den Fokus hat | | | Autor: Danny Grobe | Datum: 23.08.16 07:32 |
| Wir haben die sev-Komponenten hier im breiten Einsatz (Textilbetrieb). Und Du glaubst nicht, was ein Benutzer alles so macht... ;)
Die Maske in unserem Fall wird nur durch die Tastatur gesteuert. Durch die F-Tasten werden Stücke an- und abgemeldet. Die F-Tasten sind in den SevMenü-Einträgen hinterlegt. Wenn beim Melden eine Überprüfung eine Warnung à la "Möchten Sie wirklich?" ausgibt, und der Benutzer nochmal die gleiche F-Taste drückt (warum auch immer!), wurde der Meldevorgang parallel nochmal gestartet, obwohl die MsgBox offen war. | |
Re: sevMenuXP: Hotkeys lösen aus, wenn Formular nicht den Fokus hat | | | Autor: Charles_007 | Datum: 25.08.16 09:57 |
| Hallo Danny,
In meiner Programmiersprache hätte ich dasselbe Problem. Um das zu vermeiden müsstest Du immer dann wenn Dein Fenster den Focus verliert ein UnregisterHotkey() bzw. beim erneuten Focuserhalt erneut ein RegisterHotyKey() ausführen, wobei ich davon ausgehe, dass die "sevMenuXP" Hotkeys intern mittels der besagten WIN-API funcs implementiert werden.
Gruß
Karl-Heinz | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevWizard für VB5/6
Professionelle Assistenten im Handumdrehen
Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) Weitere InfosTipp des Monats Access-Tools Vol.1
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|