Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint
Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint
Dal palco di Proofpoint Protect 2025 emerge la strategia per estendere la protezione dagli utenti agli agenti IA con il lancio di Satori Agents, nuove soluzioni di governance dei dati e partnership rafforzate che ridisegnano il panorama della cybersecurity
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Dopo alcuni anni di assenza dai cataloghi dei suoi televisori, Hisense riporta sul mercato una proposta OLED che punta tutto sul rapporto qualità prezzo. Hisense 55A85N è un televisore completo e versatile che riesce a convincere anche senza raggiungere le vette di televisori di altra fascia (e altro prezzo)
Recensione Borderlands 4, tra divertimento e problemi tecnici
Recensione Borderlands 4, tra divertimento e problemi tecnici
Gearbox Software rilancia la saga con Borderlands 4, ora disponibile su PS5, Xbox Series X|S e PC. Tra le novità spiccano nuove abilità di movimento, un pianeta inedito da esplorare e una campagna che lascia al giocatore piena libertà di approccio
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 26-09-2007, 18:31   #1
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
[C, Win32] Menu di popup dell'icona nella tray

questo è uno dei misteri della vita che ancora non sono riuscito a risolvere.
allora: io installo un'icona nella tray con Shell_NotifyIcon e (tramite il messaggio registrato per quell'icona) ricevo notifiche come ad esempio WM_RBUTTONUP. poi facciamo che carico un menu dalle risorse dell'eseguibile (LoadMenu) e che voglio aprirlo in corrispondenza del cursore del mouse quando l'utente clicca sull'icona, cioè appunto quando ricevo WM_RBUTTONUP: dunque richiamo la GetSubMenu (visto che non si sa per quale motivo la TrackPopupMenuEx non mi funge correttamente se gli passo direttamente l'handle del menu, cioè quello resituito dalla LoadMenu) e chiamo la TrackPopupMenuEx: gli faccio aprire il menu alle coordinate che ottengo con GetCursorPos e funziona tutto tranne il fatto che quando clicco al di fuori del menu, cioè su una finestra retrostante, il c@##* di menu non si chiude. perché TUTTI i programmi del mondo riescono a farlo chiudere e io no?

andbin, questa è praticamente per te, sei l'unico che ci capisca di programmazione Win32 qui dentro
a meno che in questi ultimi giorni non sia giunto qualcun altro
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2007, 20:53   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da 71104 Guarda i messaggi
andbin, questa è praticamente per te, sei l'unico che ci capisca di programmazione Win32 qui dentro
a meno che in questi ultimi giorni non sia giunto qualcun altro
Eccomi.
Guarda ... le icone nella status area della taskbar le ho usate raramente (molto raramente). Ma mi ricordo che in effetti qualche problemino c'era. Però sono problemi ormai conosciuti.

Al riguardo leggi <questo> articolo della MS (l'ho trovato appena adesso).

A dire il vero mi ricordo che avevo letto da qualche parte (e poi mi sembra che avessi fatto proprio così) che si doveva fare una cosa del tipo:

SetForegroundWindow (hWnd);
TrackPopupMenu (........);
SetForegroundWindow (hWnd);
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2007, 21:56   #3
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
omg, che vedo: workaround orribili!! schifezze simili in Win32 le ho viste veramente molto di rado... :|
dice che dovrei fare SetForegroundWindow su una mia dialog box prima di aprire il menu, ma il problema è che la maggior parte delle volte che nel mio programma l'utente clicca sull'icona io non ho nessuna finestra aperta. come si suppone che io debba fare?
sono sicuro che ci sia una soluzione: per esempio il Gmail Notifier riesce a chiudere il menu anche senza sti magheggi...
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2007, 21:57   #4
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
ma la finestra su cui devo chiamare SetForegroundWindow deve essere visibile o può essere anche nascosta al momento? perché io in effetti una dialog box ce l'ho ma è appunto invisibile... per l'esattezza si tratta di una modeless dialog box.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2007, 21:59   #5
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
aè: funziona!!!
ho usato la finestra invisibile

boh, che dire... grazie per il link, certo però che ste schifezze da parte di Microsoft...
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 27-09-2007, 12:54   #6
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
Quote:
Originariamente inviato da 71104 Guarda i messaggi
certo però che ste schifezze da parte di Microsoft...


__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint Cybersecurity: email, utenti e agenti IA, la nuo...
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti Hisense A85N: il ritorno all’OLED è convi...
Recensione Borderlands 4, tra divertimento e problemi tecnici Recensione Borderlands 4, tra divertimento e pro...
TCL NXTPAPER 60 Ultra: lo smartphone che trasforma la lettura da digitale a naturale TCL NXTPAPER 60 Ultra: lo smartphone che trasfor...
Un fulmine sulla scrivania, Corsair Sabre v2 Pro ridefinisce la velocità nel gaming Un fulmine sulla scrivania, Corsair Sabre v2 Pro...
Battlefield 6: confermata la dimensione ...
Windows 11 porta il Wi-Fi 7 alle aziende...
Logitech MX Master 4 subito disponibile ...
'Nonna Skyrim' dice addio all'RPG di Bet...
PlayStation 5 Slim a 399€ o bundle con N...
roborock Qrevo Curv S5X in offerta a 649...
Sapphire Nitro+ B850A WIFI 7: la nuova s...
CraftGPT: un giocatore costruisce ChatGP...
Il Conto Termico 3.0 è ufficiale:...
Tesla inaugura la stazione di ricarica S...
20 super sconti Amazon senza precedenti:...
Un TV 65 pollici a 399€? Si è possibile ...
Internet in Italia: Vodafone trionfa in ...
Electronic Arts: l'acquisizione è...
Apple Intelligence: ecco le app che sono...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:10.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v