对于我的应用程序,我想从应用程序本身为我的NSWindow设置自定义长度和宽度。我已经完成了所有设置(NSTextfields)但是我很难理解我应该怎么做。
答案 0 :(得分:4)
您想在NSWindow上使用setFrame:display:
或setFrame:display:animate:
方法。
- (void)setFrame:(NSRect)windowFrame display:(BOOL)displayViews
<强>参数强>
窗框
窗口的框架矩形。
displayViews
指定窗口是否重绘需要显示的视图。当YES时,窗口向其视图层次结构发送displayIfNeeded消息,从而重绘所有视图。
答案 1 :(得分:3)
NSRect
的定义如下:
typedef struct _NSRect {
NSPoint origin;
NSSize size;
} NSRect;
NSSize
的定义如下:
typedef struct _NSSize {
CGFloat width;
CGFloat height;
} NSSize;
您需要先将NSString
转换为数字。你可以这样做:
CGFloat numericalValue = [stringValue doubleValue];
(我实际上并不记得CGFloat
是否被定义为float
或double
。我现在太懒了,无法查找它。)请注意,这将是如果stringValue
不代表格式正确的数字,则会导致异常。