Jak programowo ustawić rozmiar okna? Mam okno w IB i chcę ustawić jego rozmiar w moim kodzie, aby był większy.Programuj programowo rozmiar NSWindow
Odpowiedz
Zastosowanie -setFrame:display:animate:
dla maksymalnej kontroli:
NSRect frame = [window frame];
frame.size = theSizeYouWant;
[window setFrame: frame display: YES animate: whetherYouWantAnimation];
Należy pamiętać, że współrzędne okienne są odwrócone od tego, co może być wykorzystane do. Punkt początkowy prostokąta jest jej dolny lewy w Quartz/Kakao na OS X. Aby zapewnić punkt początkowy pozostaje taka sama:
NSRect frame = [window frame];
frame.origin.y -= frame.size.height; // remove the old height
frame.origin.y += theSizeYouWant.height; // add the new height
frame.size = theSizeYouWant;
// continue as before
Zastosowanie setFrame:display:animate:
[window setFrame:NSMakeRect(0.f, 0.f, 200.f, 200.f) display:YES animate:YES];
nie wiem co NSMakeFrame jest. Używam NSMakeRect. –
faktycznie wydaje się, że +/- potrzebę zostać odwrócony, aby utrzymać okno od poruszających się na ekranie:
NSRect frame = [window frame];
frame.origin.y += frame.size.height; // origin.y is top Y coordinate now
frame.origin.y -= theSizeYouWant.height; // new Y coordinate for the origin
frame.size = theSizeYouWant;
Albo jeszcze lepiej: frame.origin.y + = (frame.size.height - theSizeYouWant.height); – mojuba
Swift wersję
var frame = self.view.window?.frame
frame?.size = NSSize(width: 400, height:200)
self.view.window?.setFrame(frame!, display: true)
- 1. Programuj programowo szablon Embera
- 2. Uzyskaj rozmiar nswindow
- 3. Programowo programuj i wyświetlaj pasek postępu.
- 4. Programowo programuj listę warstw z zaokrąglonymi narożnikami.
- 5. Utwórz programowo NSWindow w Swift
- 6. Zapisz rozmiar NSWindow na zmianę rozmiaru i zamknij dla użytkownika
- 7. Native OSX Lion rozmiar kursora na zlecenie NSWindow lub NSView
- 8. Jak programowo dokonać NSWindow pełnoekranowy za pomocą Lion?
- 9. Jak programowo ustawić rozmiar NSView?
- 10. Połóż przezroczysty NSWindow na stałe na innym NSWindow
- 11. Nadpisanie przycisku zamknięcia NSWindow
- 12. Dolny pasek w NSWindow
- 13. "Złóż" NSWindow używając CoreAnimation
- 14. NSWindow zwraca zero (NSApplication)
- 15. Jak ustawić przekątną NSWindow tylko w pionie?
- 16. Wskaźnik zmiany rozmiaru NSWindow nie jest widoczny
- 17. Android tekstu rozmiar programowo zbyt duży
- 18. Jak mogę programowo zmienić rozmiar UICollectionView?
- 19. Jak programowo ustawić rozmiar ramki UIScrollView?
- 20. Jak zmienić rozmiar obrazu kciuka UISlider programowo
- 21. Programowo zmieniany rozmiar tekstu uniemożliwia zmianę zdarzenia
- 22. Jak programowo zmienić rozmiar obrazu ImageView
- 23. Otwory w NSView lub NSWindow
- 24. Jak programowo utworzyć okno kakao?
- 25. NSTextField nie można edytować w zwyczaju NSWindow
- 26. Jak sprawdzić, czy NSWindow jest widoczny?
- 27. jak zacząć NSWindow w pełnym ekranie
- 28. Czy istnieje sposób, aby zleceniowe NSWindow spacjami
- 29. Kakao NSWindow z 2 paskami narzędzi
- 30. Jak śledzić otwarcie i zamknięcie programu NSWindow?
@ Odpowiedź Leo ma punkt, a przynajmniej widziałem to samo - +/- należy odwrócić. –
Mam spróbować tego kodu, ale nadal moje okno przesuwa się w dół. każde rozwiązanie, aby zatrzymać ruchome okno. –
Działa idealnie dla mnie. Chciałem programowo zmienić rozmiar kontrolera okna, który był prezentowany jako widok arkusza. Dzięki! – Supertecnoboff