如何以編程方式設置NSView的大小,例如如何以編程方式設置NSView大小?
-(void)awakeFromNib {
self.frame.size.width = 1280; // Does nothing...
self.frame.size.height = 800; // ...neither does this.
...
筆尖(Mac OSX)中的大小設置工作正常,但我想在代碼中完成。
如何以編程方式設置NSView的大小,例如如何以編程方式設置NSView大小?
-(void)awakeFromNib {
self.frame.size.width = 1280; // Does nothing...
self.frame.size.height = 800; // ...neither does this.
...
筆尖(Mac OSX)中的大小設置工作正常,但我想在代碼中完成。
當你調用self.frame,它返回的數據幀,而不是一個指針。因此,結果中的任何更改都不會反映在視圖中。爲了改變視圖,你必須設置新的幀進行更改後:
- (void)awakeFromNib {
NSRect f = self.frame;
f.size.width = 1280;
f.size.height = 800;
self.frame = f;
//...
}
要通過編程設置應用程序的大小(這就是我想做的事),你需要做的是: -
- (void)awakeFromNib {
...
NSWindow* w = [self window];
NSRect f;
f.size.width = 1280;
f.size.height = 800;
[w setFrame:f display:YES];
}
非常感謝。我失去了生存的意志。現在不僅有一些事情開始發生,但我發現這是一個錯誤的問題 - 下面的答案是。 – 2010-12-18 06:15:36
@ughoavgfhw非常感謝你 – pregmatch 2014-10-21 04:43:37