2011-07-30 52 views
0

我掙扎得到一個子視圖窗口寬度(這是作爲一個自定義工具欄[我需要一個NSView而非NSToolbar])的INAppStoreWindow內居中..設置子視圖的寬度等於在發射

子視圖正在被正確添加,並且只有當窗口寬度與我在IB中創建的自定義視圖的寬度完全相同時,才能正確延伸

如果窗口打開比自定義視圖寬,它不能正確拉伸。窗口似乎以與我離開它完全相同的狀態(在Lion中)打開,這意味着我必須在啓動時將自定義視圖的寬度設置爲恢復的窗口寬度。

同樣重要的是等我把在筆尖視圖的中央按鈕保持居中......

我該怎麼辦呢?

編輯:爲了清楚,如何獲得恢復窗口的寬度?我在筆尖文件將其設置爲480,但如果我調整窗口的大小,退出然後重新啓動應用程序,window.frame.size.width仍返回480,不是我..

非常感謝退出寬度

回答

0

我把它你不是在界面生成器中創建NSWindow,你可以覆蓋-[NSView viewDidMoveToWindow]-[NSView viewWillMoveToWindow]來設置寬度,也有viewDidMoveToView等價物,這可能會更有意義,因爲你將view添加到NSWindows contentView中,也有awakeFRomNib,你可以覆蓋它可能是更好的選擇,如果您只需要在從Nib文件中加載時就擔心這個問題。

+0

沒有,NSWindow在IB創建.. 我也不知道怎麼弄的窗口的寬度.. – GarethPrice

+0

你想要的是它的寬度與窗口內容視圖 - [NSWindow內容查看]你如果自定義視圖被添加到界面構建器的窗口中,則可以使用 - [NSView bounds]獲取內容視圖界限我不確定爲什麼在界面構建器中設置自動調整控件不起作用。 –

+0

的其實不是獲取內容查看您正在使用的可能bettwe窗戶 - [的NSView上海華]中的[的NSView viewDidMoveToSuperview],這意味着你什麼時候加入到包括窗口內容查看任何超視圖代碼將工作, –

相關問題