如何翻轉NSWindow的座標系?我知道它有一個內容視圖,但我怎樣才能翻轉NSView類型的特定視圖的座標系?NSWindow目標-c /可可的翻轉座標系
在我的NSWindow的內容視圖的子視圖中,我通過繼承NSView子類來翻轉座標系,將其放置在我的窗口中,並在該子類NSView中實現方法isFlipped以返回YES。不知道我怎麼能讓NSWindow使其內容查看「MyFlippedSubclassedNSView」
如何翻轉NSWindow的座標系?我知道它有一個內容視圖,但我怎樣才能翻轉NSView類型的特定視圖的座標系?NSWindow目標-c /可可的翻轉座標系
在我的NSWindow的內容視圖的子視圖中,我通過繼承NSView子類來翻轉座標系,將其放置在我的窗口中,並在該子類NSView中實現方法isFlipped以返回YES。不知道我怎麼能讓NSWindow使其內容查看「MyFlippedSubclassedNSView」
您不能更改NSWindow的內部座標系統。您可以得到的最接近的是作爲內容視圖的翻轉視圖。
雖然你實際上並不需要翻轉的內容視圖或窗口。通過翻轉座標系,你實際上想要完成什麼?
不知道我怎麼會NSWindow使得它的內容視圖去「MyFlippedSubclassedNSView」
的做到這一點。製作一個MyFlippedSubclassedNSView實例,並將其設置爲內容視圖。
更容易的是在IB中做:選擇窗口的內容視圖,點擊⌘6(Identity),並將視圖的類設置爲MyFlippedSubclassedNSView。
看起來像你想-[NSView setBoundsOrigin:]
。
我不明白這將如何解決它;我可以讓我的原點位於視圖的左上角,而不是左下角,但如果我在「0,20,按鈕寬度,按鈕高度」處繪製一個按鈕,我將在上方繪製20像素查看對嗎?我期待這個0,20例子在我的視圖的左上角下方畫20個像素。 – Nektarios 2010-06-24 16:17:10
Nektarios:正確。改變原點是不夠的。您還必須將座標系調整到相反的方向。 – 2010-06-25 08:00:57
那很完美。謝謝!我不知道爲什麼這對我不明顯。 我不需要翻轉視圖,但它會讓我的生活變得更輕鬆。我將以編程方式進行大量視圖的動態佈局,並且列表自然會從頂部到底部增長。由於我手動跟蹤了我的查看展示位置的所有座標,這將使我的算術對我更有意義。 – Nektarios 2010-06-25 15:27:39