Deutsch
Forum

TrayIcon Msg Windows 11

 

Georg
Teles
Korrigiere gerade eines meiner Tools 1Click-Screenshot, wobei hier das TrayIcon angeklickt wird und stelle beim Testen fest, der normale Linksklick und Rechtsklick unter Windows 11 garnicht reagieren ... Doppelklicks auch nicht.

Windows 11 reagiert offensichtlich nur beim Loslassen, alle Quelltexte also beim Anklicken mit Messages $201 (Maus links anklicken) / $204 (Maus rechts anklicken) sind somit mit $202 (Maus links loslassen) / $205 (Maus rechts loslassen) zu ersetzen. Habs unter Windows XP, 7, 8, 10 und 11 getestet, das geht. Der doppelklick allerdings ist mir unter Windows 11 nicht bekannt.

Habe jetzt nicht in der Tiefe gebohrt, aber ... Windows 11 reagiert beim Mittleren Mausklick mit Message des linken Mausklicks (loslassen) mit der Message $202 (514)

Ansonsten sind die durchgestrichenen Messages unter 11 nicht aktuell

TrayIcon("Msg", N1):

$201 (513): Linke Maustaste gedrückt
$202 (514): Linke Maustaste losgelassen
$203 (515): Doppelklick mit linker Maustaste
$204 (516): Rechte Maustaste gedrückt
$205 (517): Rechte Maustaste losgelassen
$206 (518): Doppelklick mit rechter Maustaste
$207 (519): Mittlere Maustaste gedrückt
$208 (520): Mittlere Maustaste losgelassen
$209 (521): Doppelklick mit mittlerer Maustaste


Grüße
 
Alle Sprachen
TC-Programming [...] 
XProfan 8.0 - 10.0 - X2 - X3 - X4

vor 4 Tagen  
 




H.Brill
Da scheint wirklich was bei WIN11 geändert worden zu sein.
Mein Programm von damals läuft auch nicht mehr, wie es soll.
Lediglich wm_LButtonDown bzw. wm_RButtonDown wird noch
erkannt.
Declare Long MNummer[], ende, pos, String MString[]
MNummer[0] = $0201 : MString[0] = "wm_LButtonDown"
MNummer[1] = $0202 : MString[1] = "wm_LButtonUp"
MNummer[2] = $0204 : MString[2] = "wm_RButtonDown"
MNummer[3] = $0205 : MString[3] = "wm_RButtonUp"
MNummer[4] = $0207 : MString[4] = "wm_MButtonDown"
MNummer[5] = $0208 : MString[5] = "wm_MButtonUp"
MNummer[6] = $20A  : MString[6] = "Mausrad"
MNummer[7] = $000F : MString[7] = "WM_PAINT"
MNummer[8] = $0214 : MString[8] = "WM_SIZING"
MNummer[9] = $0203  : MString[9] = "Maus - Doppel - Klick"
ende = 0
'UserMessages $201, $202, $203, $204, $205, $207, $208, $20A, $000F, $0214, $10
Window 600, 400

WhileNot ende

    WaitInput
    pos = IndexOf(MNummer[], %Message, 0)

    If pos > - 1

        Locate 10, 2
        Print Space$(50)
        Locate 10, 2
        Print MString[pos], Hex$(MNummer[pos])

    EndIf

    If %Message = $10

        ende = 1

    EndIf

EndWhile

End

Mit den UserMessages scheint es aber zu gehen :
Declare Long MNummer[], ende, pos, String MString[]
MNummer[0] = $0201 : MString[0] = "wm_LButtonDown"
MNummer[1] = $0202 : MString[1] = "wm_LButtonUp"
MNummer[2] = $0204 : MString[2] = "wm_RButtonDown"
MNummer[3] = $0205 : MString[3] = "wm_RButtonUp"
MNummer[4] = $0207 : MString[4] = "wm_MButtonDown"
MNummer[5] = $0208 : MString[5] = "wm_MButtonUp"
MNummer[6] = $20A  : MString[6] = "Mausrad"
MNummer[7] = $000F : MString[7] = "WM_PAINT"
MNummer[8] = $0214 : MString[8] = "WM_SIZING"
MNummer[9] = $0203  : MString[9] = "Maus - Doppel - Klick"
ende = 0
Window 600, 400
UserMessages $201, $202, $203, $204, $205, $207, $208, $20A, $000F, $0214

WhileNot ende

    WaitInput

    If %Message = %UMessage

        pos = IndexOf(MNummer[], %UMessage, 0)

        If pos > -1

            Locate 10, 2
            Print Space$(50)
            Locate 10, 2
            Print MString[pos], Hex$(MNummer[pos])

        EndIf

    EndIf

    If %Message = $10

        ende = 1

    EndIf

EndWhile

End

Für die Doppelklicks wäre das hier zu verwenden :
Declare x&
Def GetClassLong(2) !"USER32", "GetClassLongA"
Def SetClassLong(3) !"USER32", "SetClassLongA"
Cls
Usermessages $203,$206,$209
x&=GetClassLong(%hwnd,-26)
x& = x& | 8
SetClassLong(%hwnd,-26,x&)'CS_DBLCLKS Class-Style setzen.

While 1

    waitinput
    Case %key=2:BREAK

    If %umessage=$203

        Print "Linker Doppelklick."

    ElseIf %umessage=$206

        Print "Rechter Doppelklick."

    ElseIf %umessage=$209

        Print "Mittlerer Doppelklick."

    EndIf

EndWhile

Usermessages 0
End

Gefunden hier im Forum.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
Vorgestern (09:18)  
 




H.Brill
Ah, habe gerade gesehen, daß ich noch Windows 10 drauf habe.
Müßtest du halt mal mit Ver 11 probieren.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
Vorgestern (11:55)  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

47 Betrachtungen

Unbenanntvor 0 min.
Jürgen StrahlGestern (07:27)
H.BrillVorgestern (11:55)
Georg Teles vor 4 Tagen

Themeninformationen

Dieses Thema hat 2 Teilnehmer:

H.Brill (2x)
Georg Teles (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie