2012-02-10 6 views
6

estoy frente a un comportamiento extraño con cacao NSView en Mac OS X.NSView ratón seguimiento

He una costumbre NSView en un recipiente NSView, esta costumbre NSView un seguimiento de los movimientos del ratón, clics y tiene una descripción. Cuando agrego un NSView encima de la vista descrita, aún puedo ver la información sobre herramientas incluso si la vista con la información sobre herramientas está debajo, detrás y no visible.

Estoy bastante seguro de que he entendido mal algo en la cadena de manejo de eventos.

¡Cualquier ayuda es realmente apreciada! ;)

tenga un buen fin de semana,

Paolo

Respuesta

0

Si no lo está utilizando ya se puede llamar al método removeFromSuperview.

NSView *myView 
[myView alloc] init] 
// do stuff 
[myView removeFromSuperview] 

si simplemente no desea que le permite recibir eventos se puede llamar al método resignFirstResponder

NSView *myView 
[[myView alloc] init] 
// do stuff 
[myView resignFirstResponder] 
1

La cuestión fundamental es que no se supone que tienen la superposición de puntos de vista en Cocoa. O al menos, el comportamiento se vuelve indefinido. Una vista puede ser una subvista de otra vista, pero no simplemente un hermano dentro de los límites de la otra vista.

Sin embargo, una forma de resolver su problema particular es ocultar la vista debajo, utilizando el método setHidden:.