Come si crea un NSButton personalizzato a tema? Non intendo in un modo piccolo come cambiare il colore di sfondo o cambiare dai bordi arrotondati ai bordi quadrati. Voglio sostituire l'intero aspetto del pulsante. È possibile farlo anche in Cocoa? Ovviamente dovrei sottoclassi la classe NSButton e andare da lì. Qualsiasi aiuto sarebbe molto apprezzato.Come si crea un NSButton a tema personalizzato?
8
A
risposta
12
In realtà, è necessario sottoclasse NSButtonCell
. Si consiglia di leggere Apple's documentation su questo per ottenere una migliore comprensione di come interagiscono. Probabilmente vorrai comunque creare sottoclasse NSButton
in modo che utilizzi anche la sottoclasse NSButtonCell
.
Per un pulsante, la maggior parte del lavoro viene eseguita in drawBezelWithFrame:inView:
. Se si desidera modificare il modo in cui viene disegnato il testo o l'immagine, si esegue l'override di drawText:withFrame:inView:
e drawImage:withFrame:inView:
.
Problemi correlati
- 1. Come creare un NSButton personalizzato a tema senza sottoclasse NSButtonCell?
- 2. Crea tema personalizzato o Usa tema standard in WPF
- 3. Come si crea un bordo personalizzato attorno a un UIView?
- 4. Come fare riferimento a uno stile in un tema personalizzato
- 5. Come trattare il mio tema emacs personalizzato come "tema sicuro"?
- 6. Come si crea un controllo utente XAML personalizzato collegabile?
- 7. Come si porta un tema da Silverlight a WPF?
- 8. Crea un indicatore SwipeRefreshLayout personalizzato?
- 9. Come aggiornare un tema dell'interfaccia utente jQuery personalizzato?
- 10. Come creare un tema personalizzato di Google Sites?
- 11. Come si crea un metaclasse?
- 12. Crea evento wpf personalizzato
- 13. Come si applica un tema colore personalizzato Emacs in modalità console?
- 14. Crea contenitore winforms personalizzato
- 15. Come scoprire se sono un NSButton con buttonType NSSwitchButton?
- 16. come si applica un ordinamento personalizzato a un array?
- 17. Come si aggiunge un metodo personalizzato a un servizio Restangular?
- 18. NSButton sfondo bianco quando si fa clic su
- 19. Rendi personalizzato il tema personalizzato (suggerimento di lint per Android)
- 20. Come si crea un UIViewController a livello di programmazione?
- 21. Come si crea un grafico a barre "annidato"?
- 22. Come si crea un puntatore a funzione no-cut?
- 23. Come si crea un grafico a torta usando Bokeh?
- 24. Applicazione di un tema a un appwidget
- 25. Permettere agli utenti di scegliere un tema personalizzato in Rails
- 26. Come si passa un attributo personalizzato a una funzione?
- 27. Come si crea un percorso casuale?
- 28. NSButton setAlignment non funziona
- 29. Come si crea un conduit "ramificato"?
- 30. Come si crea un figlio NSManagedObjectContext?
Sì, questo è il modo migliore per farlo. Nota: se si utilizza Interface Builder e Mac OS 10.5 non è più necessario eseguire la sottoclasse di NSButton. Basta trascinare/rilasciare il pulsante nel pennino e quindi modificare la classe della cella nella classe personalizzata. – Leibowitzn
Questo è vero. Più ancora, l'unica volta in cui avresti davvero bisogno di sottoclasse di 'NSButton' è se stavi creando i controlli a livello di programmazione. – Alex
Posso semplicemente sostituire l'aspetto impostando una proprietà? Sono stato in grado di modificare l'aspetto utilizzando la proprietà "image" del pulsante, ma ho ottenuto un brutto rettangolo grigio ogni volta che si fa clic sul pulsante personalizzato (l'immagine ha una trasparenza). Grazie. – adib