Domanda

Sto sviluppando un'interfaccia per una simulazione OpenGL su Mac utilizzando Interface Builder.Tutto il materiale OpenGL è stato scritto in C ++ (che conosco abbastanza bene).Purtroppo non ho idea di Objective-C.

Fondamentalmente, ho alcuni NSTextField che mostrano informazioni su un oggetto selezionato sullo schermo.Usando questi campi di testo l'utente è in grado di manipolare l'oggetto sullo schermo e poi c'è un pulsante Salva e un pulsante Ripristina (che salva i nuovi valori o ripristina quelli originali)

Ho tutto funzionante.Il mio problema è che quando inserisco i dati in un NSTextField il "focus" delle finestre sembra rimanere su NSTextField (il bordo blu rimane attorno ad esso).

Uso la tastiera per interagire con gli elementi all'interno di NSOpenGLView, devo riportare lo stato attivo a NSOpenGLView quando premo i pulsanti Salva o Ripristina.

Scusa se questa è una domanda molto semplice

Grazie

David

È stato utile?

Soluzione

Hai provato a utilizzare NSWindow makeFirstResponder per rendere il tuo NSOpenGLView il primo risponditore?

Altri suggerimenti

Sono appena riuscito a farlo funzionare.

Ho dovuto aggiungere la riga:

[[NSApp keyWindow] makeFirstResponder: MyOpenGLView];

alla fine della funzione chiamata quando clicco su uno dei miei pulsanti.

(Grazie Julio per avermi indicato nella giusta direzione)

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