Win32: Come posso rendere un HWND trasparente ai clic?
Domanda
Voglio un HWND trasparente ai clic (cioè li passa alle finestre sottostanti).
Inizialmente ho provato WS_EX_TRANSPARENT ma questo ha molti tipi di problemi di ridisegno. Le finestre sottostanti finiscono col disegnare sul mio HWND.
Ho fatto qualche ricerca e ho trovato un suggerimento per rispondere a WM_NCHITTEST restituendo HTTRANSPARENT. Questo sembra funzionare, ma MSDN afferma che funziona correttamente solo quando le finestre sottostanti sono nello stesso thread. La ricerca di HTTTRANSPARENT ha riscontrato alcuni problemi ( http: //www.virtualdub. org / blog / perno / entry.php? id = 147 )
Quindi ... altre idee?
Soluzione
Cattura tutti i messaggi del mouse e inoltrali alla finestra sottostante con PostMessage.