Come posso cambiare il cursore quando si trova su un NSButton?Cacao: cambia il cursore quando è su un NSButton
risposta
[yourButton addCursorRect:[yourButton bounds] cursor:[theCursorYouWant]];
Fare in modo che il pulsante aggiunga un cursore rect.
come faccio che –
era il down-voto necessario? Una rapida ricerca della documentazione per "cursore retto" ti dice molto. –
@JoshuaNozzi si, poiché questo non è, in sé e per sé, una risposta utile. –
È necessario innanzitutto sottoclasse NSButton, quindi aggiungere il codice seguente.
- (void)resetCursorRects
{
if (self.cursor) {
[self addCursorRect:[self bounds] cursor: self.cursor];
} else {
[super resetCursorRects];
}
}
Ora è possibile impostare il cursore come desiderato.
[self.button setCursor:[NSCursor pointingHandCursor]];
Nota: aggiungi cursor
come una proprietà della sottoclasse, in questo modo:
@property (strong) NSCursor *cursor;
Potresti ampliare un po 'la tua risposta. NSButton non ha una variabile di istanza del cursore? Non capisco la tua risposta. –
La sottoclasse di ogni singolo pulsante che ho nell'interfaccia utente solo per applicare un cursore in movimento sembra irragionevole. Dopo averti detto che non dovresti chiamare direttamente addCursorRect, i documenti ti dicono anche di non chiamare mai "resetCursorRects" e di chiamare "invalidateCursorRects", che è un metodo NSWindow. –
@MottiShneor Chiamare [super resetCursorRects] all'interno diresetCursorRects non viola la regola "never call this", in quanto in realtà non lo si sta invocando. –
- 1. Cambia il colore di sfondo di NSButton
- 2. cambia cursore durante il caricamento della pagina
- 3. Cambia il colore del cursore del testo (caret) in Cocoa?
- 4. NSButton sfondo bianco quando si fa clic su
- 5. CSS: Cambia cursore background-image
- 6. Disabilita/Abilita NSButton se NSTextfield è vuoto o no
- 7. Cambia React Cursore nativo colore
- 8. Verifica se NSButton non funziona su drawRect
- 9. cambia il cursore dal blocco o dal rettangolo alla linea?
- 10. Vim cambia il cursore del blocco quando si trova in modalità inserimento
- 11. Cambiare il cursore su HTML5 Canvas quando si trascina il mouse
- 12. Mouse Set cursore utilizzando jQuery/CSS non cambia fino a quando il mouse si trasferisce
- 13. Quando chiudere il cursore in Android?
- 14. Cambia cursore del mouse per l'intera pagina?
- 15. Cambia cursore finestra con puro CSS
- 16. Come posso rilevare quando il cursore XAML è stato completato?
- 17. Cambia cursore del mouse MacOS X Immagine
- 18. NSButton senza "evidenziazione del clic"
- 19. $ {java.home} cambia quando si esegue Maven su un OS X
- 20. Cambia i tasti freccia nel cursore Slick
- 21. Controlla quale elemento il cursore è su mouseleave() con jQuery?
- 22. Ricevi notifiche quando un file cambia su dropbox
- 23. Spostare il cursore in un programma C
- 24. Notifica quando un file cambia?
- 25. cambia il cursore su occupato mentre la pagina si sta caricando
- 26. NSButton setAlignment non funziona
- 27. DatePicker.SelectedDate non cambia quando viene immesso il testo
- 28. caricamento eventi fullcalendar quando il mese cambia
- 29. Analizzare correttamente un cursore Mongo su PHP
- 30. Il cursore diventa un ridimensionamento diagonale quando la forma è sopra e sinistra del monitor principale
Da documenti Apple: _Questo metodo deve essere richiamato solo dal metodo resetCursorRects. Se invocato in un altro modo, il rettangolo del cursore risultante verrà eliminato la volta successiva che i rettangoli del cursore della vista verranno ricostruiti_. Quindi devi sottoclasse NSButton. – Kentzo