Domanda

Sfondo: La mia applicazione ha una finestra principale che contiene alcuni oggetti NSView più piccoli, ognuno dei quali contiene diversi controlli, etichette, immagini, ecc. Uno di questi le viste (e tutto ciò che contiene) sono disabilitate in risposta a un determinato flag. Quando viene impostato il flag, disabilito e disabilito automaticamente tutti i controlli incorporati in quel NSView .

Domanda: vorrei sapere come oscurare il NSView disabilitato. L'effetto che sto cercando sarebbe qualcosa come disegnare una scatola nera trasparente al 50% sopra il NSView disabilitato. Lo sfondo e tutti i controlli sarebbero comunque visibili, ma i colori sarebbero più scuri. C'è un modo semplice per farlo?

È stato utile?

Soluzione

CoreAnimation in 10.5 dovrebbe fornire un modo semplice per mettere uno strato traslucido sopra una vista. Puoi creare un livello nero davanti alla vista, con l'opacità allo 0%. Quando vuoi scurire la vista, imposta l'opacità del livello nero al 50% e la vista verrà scurita uniformemente.

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