3
A
回答
2
當然,您可以通過編程創建所有UI元素。您只需創建一個窗口NSOpenGLView
內容,例如:
NSWindow *w = [[NSWindow alloc] initWithContentRect:NSMakeRect(100,100,400,300)
styleMask:NSTitledWindowMask|NSClosableWindowMask|NSMiniaturizableWindowMask|NSResizableWindowMask
backing:NSBackingStoreBuffered
defer:YES];
NSRect frame = [w contentRectForFrameRect:[w frame]];
// this is optional - request accelerated context
unsigned int attrs[] = { NSOpenGLPFAAccelerated, 0 };
NSOpenGLPixelFormat *pixelFormat = [[NSOpenGLPixelFormat alloc] initWithAttributes:(NSOpenGLPixelFormatAttribute*)attrs];
NSOpenGLView *view = [[NSOpenGLView alloc] initWithFrame:frame pixelFormat:pixelFormat];
[pixelFormat release];
// manage properties of the window as you please ...
[w setOpaque:YES];
[w setContentView:view];
[w makeFirstResponder:view];
[w setContentMinSize:NSMakeSize(150.0, 100.0)];
[w makeKeyAndOrderFront: self];
在實踐中,你可能會繼承NSOpenGLView
和使用你的類,而不是...
相關問題
- 1. JavaScript - 如何在不使用alert()或window.open()的情況下創建對話窗口?
- 2. 您可以在不打開窗口的情況下創建OpenGL上下文嗎?
- 3. 在不使用kibana的情況下在kibana中創建索引
- 4. 如何在沒有GUI工具包的情況下在Python中創建窗口
- 5. 委託正在發佈的情況下自定義查看使用XIB創建
- 6. 使用ScrollViews在不使用Interace Builder的情況下創建PageControl
- 7. 如何在特定情況下使用接口創建對象
- 8. Flex和AIR:在不重新創建的情況下打開和關閉窗口
- 9. 如何在不創建窗口的情況下將WPF UserControl呈現爲位圖
- 10. 如何在不遮擋背景窗口的情況下創建ProgressDialog
- 11. 如何在不使用CSplitterWnd的情況下在MFC中動態分割窗口::創建
- 12. 在不使用窗口的情況下在閉包全局中聲明函數
- 13. 如何在不使用Membership.CreateUser()的情況下創建用戶?
- 14. 如何在不爲每種語言創建xib的情況下本地化xib視圖中的文本?
- 15. 在不打開父窗口的情況下調用tkFileDialog
- 16. 如何在沒有窗口句柄的情況下使用RegisterDeviceNotification?
- 17. 在不使用VCL的情況下創建表單
- 18. 在不使用mediafilesegmenter的情況下創建FairPlay流(FPS)流
- 19. 如何在不使用Shadow DOM的情況下創建組件?
- 20. 如何在不使用String的情況下創建JSON對象?
- 21. 在不使用佈局的情況下創建標籤式UI
- 22. 在不創建項目的情況下使用leiningen安裝庫
- 23. 如何在不使用ActionListener的情況下修改窗口中的JLabel?
- 24. 在不創建實例的情況下創建一個類?
- 25. 在不創建日曆的情況下創建iCal事件
- 26. 在不創建多線程的情況下創建splashscreen
- 27. 如何在沒有命令提示符窗口的情況下創建文件
- 28. 如何在這種情況下使用子窗口
- 29. WPF在不關閉原始窗口的情況下打開一個新窗口
- 30. 在不使用GWT窗口部件的情況下進行ajax調用
這真的很難找到一個最新的指南,但這工作很好,謝謝西蒙! – Tradition 2011-12-29 04:31:52