Sto scrivendo un'applicazione per Mac OS X 10.6 e versioni successive in C++. Una parte dell'applicazione deve simulare il movimento del mouse e i clic del mouse. Lo faccio attualmente pubblicando oggetti CGEvent
utilizzando CGEventPost(kCGHIDEventTap, event);
.Simulare il clic del mouse su Mac OS X non funziona con alcune applicazioni
Questo funziona, per la maggior parte - Posso simulare il movimento del mouse e fare clic bene, ma sembra non funzionare in alcune aree. Ad esempio:
- In Mozilla Firefox e Safari, posso fare clic su tutti i menu, ma non posso fare clic su un collegamento all'interno di un sito Web. Quando provo, il link è evidenziato, ma il browser non segue mai il collegamento. Tuttavia, posso fare clic con il pulsante destro del mouse su un collegamento, selezionare "Apri collegamento in una nuova scheda" e tutto funziona come previsto. Risolto - la creazione dell'evento del mouse tramite
CGEventCreateMouseEvent(...)
fa funzionare l'evento nel browser web. - Posso fare clic sull'icona "Dashboard" per salire sul dashboard, ma non posso fare clic sul pulsante "i" su nessuno dei widget del dashboard. Allo stesso modo, fare clic su uno qualsiasi dei risultati di ricerca dal widget di ricerca Spotlight non funziona neanche.
Questa incoerenza riguarda i limiti dell'applicazione. Quale potrebbe essere la causa?
Brillante! Questo lo ha risolto alla perfezione. Molte grazie! – Thomi