0

对于我的应用程序,我想从应用程序本身为我的 NSWindow 设置自定义长度和宽度。我已经设置好了所有东西(NSTextfields),但是我不知道该怎么做。

4

2 回答 2

4

你想要 NSWindow 上的setFrame:display:orsetFrame:display:animate:方法。

文档中:

- (void)setFrame:(NSRect)windowFrame display:(BOOL)displayViews

参数
windowFrame
窗口的框架矩形。

displayViews
指定窗口是否重绘需要显示的视图。当 YES 时,窗口将 displayIfNeeded 消息发送到其视图层次结构中,从而重绘所有视图。

于 2009-10-12T17:27:08.010 回答
3

NSRect定义如下:

typedef struct _NSRect {
    NSPoint origin;
    NSSize size;
} NSRect;

并且NSSize是这样定义的:

typedef struct _NSSize {
    CGFloat width;
    CGFloat height;
} NSSize;

您需要NSString先将 s 转换为数字。你可以这样做:

CGFloat numericalValue = [stringValue doubleValue];

(我实际上不记得 ifCGFloat被定义为 a floator double。我只是懒得现在去查找它。)请注意,如果stringValue不代表格式正确的数字,这将导致异常。

于 2009-10-12T20:54:32.553 回答