/ / Jakie jest zdarzenie w kakao dla NSWindow, które mówi, że NSWindow jest teraz wyświetlany po pierwszym uruchomieniu? - cel-c, maca, kakao

Jakie jest wydarzenie w kakao dla NSWindow, które mówi, że NSWindow jest teraz wyświetlany po pierwszym uruchomieniu? - cel-c, maca, kakao

Muszę pokazać okno dialogowe arkusza wkrótce po głównymokno zostało wyświetlone po pierwszym uruchomieniu. Jeśli zrobię to w init lub obudzę się ze stalówki, to nie działa poprawnie (arkusz pokazuje się jako okno odłączone od głównego okna, jeśli zrobię to w metodzie init). Wydaje mi się, że muszę pokazać arkusz po wyświetleniu okna nadrzędnego. Mam klasy appcontroller, który ma wskaźnik okna. Zgaduję, że muszę zarejestrować się jako delegat lub coś w oknie? i wdrożyć jakąś metodę, aby odebrać to połączenie? Dzięki,

Odpowiedzi:

1 dla odpowiedzi № 1

applicationDidFinishLaunching: to twój punkt wejścia. Zostaje on wysłany do delegata aplikacji po skonfigurowaniu aplikacji, ale zanim użytkownik będzie miał możliwość interakcji z nią.


2 dla odpowiedzi nr 2

Nie ma niezawodnego zdarzenia, powiadomienia ani delegowania wywołania metody. Oczekuje się, że twój kod jest odpowiedzialny za wyświetlenie okna, więc powinien już wiedzieć, kiedy pojawi się okno.

Czy polegasz na właściwości Visible at Launch ustawionej w Interface Builder? Jeśli tak, to czego używasz do ładowania NIB? Mam nadzieję, że kontroler okna. W takim przypadku powinieneś dzwonić do -window metoda ładowania NIB i uzyskania okna. Wynikowe odniesienie do okna jest tym, co można przekazać do metody, która rozpoczyna arkusz.

Jeśli nie polegasz na Visible at Launch, jaki kod używasz do wyświetlania okna? Na przykład wywołując -showWindow: na kontrolerze okien? Tak więc, wpisz kod, aby zaraz potem wyświetlić arkusz.