Pregunta

Estoy intentando abrir un NSWindow usando el siguiente código:

NSWindowController *window = [[NSWindowController alloc] initWithWindowNibName:@"MainWindow"];
[window showWindow:nil];

Se abre la ventana está bien, pero la ventana anterior sigue siendo el mainWindow y en el enfoque. He probado el código siguiente para forzar la ventana principal y no funciona. La ventana todavía tiene una barra de título desactivado y no está aceptando eventos clave, etc.

[self.window makeKeyAndOrderFront:self];
[self.window makeMainWindow];

La única manera que parecen ser capaces de obtener la ventana anterior para perder el foco es si cierro la ventana después de llamar SHOWWINDOW: con [[NSApp mainWindow] cerrar];

¿Alguna idea?

¿Fue útil?

Solución

makeKeyAndOrderFront: es el camino a seguir. ¿Estas seguro que self.window y window se refieren al mismo objeto?

Otros consejos

I resuelva el problema asignando el WindowController a la punta propietario del archivo, en lugar de tener un objeto NSWindowController separada dentro de la punta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top