Français
Forum

TrayIcon et Messages

 

Rolf
Koch
Huhu
Aus ici bereits gepostetem Grund nutze je une vieille Routine et pas qui fertigen Sachen des Trayicons dans einem projet. und dir tout autor, qui es jusqu'à autrefois ging, per Message trop überprüfen, si qui souris sur dem Trayicon verweilt.
comment geschrieben: Ging es früher toujours, là qui UserMessage (siehe Code) 1234 toujours ensuite eintrat, si on avec dem Mauszeiger sur dem Icon verweilte et cet wieder sur 0 était, sobald on es verließ.
voyez son une faute dans Bezug sur cela Problem? ici un vite extrahierter Code um cela Problem darzustellen.
Def LoadIcon(2) !"User32","LoadIconA"
DEF ExtractIcon(3) !"SHELL32","ExtractIconA"
Def GetClassLong(2) !"User32","GetClassLongA"
Def GetCursorPos(1) !"User32","GetCursorPos"
Def ShellNotify(2) !"SHELL32","Shell_NotifyIconA"
Def SetForegroundWindow(1) !"User32","SetForegroundWindow"
Def GetDoubleClickTime(0) !"User32","GetDoubleClickTime"
Def Sleep2(1) !"KERNEL32","Sleep"
Déclarer NIDATA#,Pos#,ic2#,ende%,icondll&,test4&
dim nidata#,100
Faible ic2#,100

Proc SetNewTip

    Paramètres t$
    String NIDATA#,24=t $+Chr$(0)
    ShellNotify(1,NIDATA#)'NIM_Modify

ENDPROC

Proc SetNewIcon

    Paramètres nom$
    declare icon_handle&
    String ic2#,0=nom$
    icon_handle& = loadicon(icondll&,ic2#)' Handle des Icônes
    Long NIDATA#,20 = icon_handle&
    ShellNotify(1,NIDATA#)'NIM_Modify

ENDPROC

Proc SetIcon

    Paramètres nom$
    declare icon_handle&
    String ic2#,0=nom$
    icon_handle& = ExtractIcon(%HINSTANCE,ic2#,0)
    'icon_handle&=loadicon(0,ic2#)' Handle des Icônes
    Long NIDATA#,20 = icon_handle&
    ShellNotify(1,NIDATA#)'NIM_Modify

ENDPROC

Proc CreateTrayIcon

    Long NIDATA#, 0 = 88' Taille qui Struktur
    Long NIDATA#, 4 = %hwnd' Handle des Profanfensters
    Long NIDATA#, 8 = 7777' unwichtig,ergibt & WParam chez Abfrage,peux aussi 0 son
    Long NIDATA#, 12= 7' NIF_MESSAGE or NIF_ICON or NIF_TIP;
    Long NIDATA#, 16 = 1234' benutzerdef. Message, doit größer comme 1024 (wm_user) son
    Long NIDATA#, 20 = loadicon(icondll&,ic2#)'LoadIcon(0,0) ' Handle eines Systemicons
    String NIDATA#, 24 = »+Chr$(0)' Tooltip, max. 63 marque
    ShellNotify(0,NIDATA#)' NIM_ADD

ENDPROC

proc add_tryicon

    parameters text$,icon$
    Fenêtre Style $78
    CreateTrayIcon
    SetNewIcon icon$

endproc

proc del_tryicon

    ShellNotify(2,NIDATA#)' NIM_DELETE

endproc

usermessages 1234
Fenêtre 0,0 - 800,800
Windowtitle "Rechtsklick sur Icon zum finissons!"
add_tryicon "Test","A"
SETICON $WinPath+"\\explorer.exe"
settimer 150

WhileNot Ende%

    waitinput

    si %wmtimer

        imprimer %umessage
        'cet Umessage sollte seulement 1234 chez Mouseover Icon son. Ansonsten 0!
        cas &ulparam=516:Fin

    endif

Endwhile

del_tryicon
 
17.01.2011  
 




Rolf
Koch
Zum Hinweis:
chez einer Problemsuche avec iF ist aufgefallen, qui un Minuteur comment ici dans dem le cas qui Umessages scheinbar wegkickt. Mussten uns alors quoi entier d'autre ausdenken.
pourquoi qui Messages chez %WMTIMER comment ici dans dem Beispiel pas arriver, pourrait peut-être Roland klären peut, ou bien?
 
19.01.2011  
 



répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

11.125 Views

Untitledvor 0 min.
H.Brill03.08.2024
p.specht08.02.2017
Georg Teles30.01.2016
Ernst30.04.2014
plus...

Themeninformationen

cet Thema hat 1 participant:

Rolf Koch (2x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie