Domanda

Sto cercando di creare un look pulsante personalizzato.

Da quello che ho raccolto, NSButtonCell fa il disegno, quindi dovrei essere effettivamente sovrascrivere che invece.

Ma il problema è, la mia classe CustomButton ha altre cose come NSImage, mIsMouseOver ecc Attualmente il disegno è stato fatto nella classe CustomButton ma voglio passare sopra alla cella.

domanda è, c'è qualche cosa che posso accedere all'immagine nella classe CustomButton dalla classe customButtonCell in modo che io possa usare [image drawInRect:...]?

Saluti, Han

È stato utile?

Soluzione

metodo drawWithFrame:(NSRect)frame inView:(NSView *)controlView del tuo cellulare include un riferimento al NSView in corso di elaborazione da cui è possibile accedere alle proprietà della vista (come immagine).

Altri suggerimenti

come al solito è quello di memorizzare i dati nella sottoclasse NSCell. Classe cella base ha anche un -. La struttura, immagine (id), così, la classe pulsante dovrebbe chiamare [[self cell] image] quando viene interrogato per un'immagine

In realtà, dal momento che si sta sottoclasse NSButton, contiene tutto ciò che serve, basta sostituire i metodi di disegno della cellula. E se avete bisogno di una proprietà in più -. Definirlo nella cella, avvolgere nel controllo

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top