我正在从一本关于Cocoa的自助书中挑战,这就是我被困的地方。 我正在尝试从单个文本字段调整窗口大小。
#import "DelegateAppDelegate.h"
@implementation DelegateAppDelegate
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
// Insert code here to initialize your application
}
//some tip i don't understand from the challenge
-(NSSize)windowWillResize:(NSWindow *)sender toSize:(NSSize)frameSize;
{
NSSize mySize = NSMakeSize(400, 200);
NSLog(@"mySize is %f wide and %f tall", mySize.width, mySize.height);
return mySize;
}
//button that will send the value from the text field
- (IBAction)userResize:(id)sender {
NSInteger size = [_userSelectedSize intValue];
NSSize userInputSize = NSMakeSize(size, (size/2));
//there is only one text field named userInputSize. the size is halved
//for the height
NSLog(@"width = %f, height = %f", userInputSize.width, userInputSize.height);
[_userSelectedSize setStringValue:@"updated"];
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~THIS IS WHAT I NEED HELP WITH
[windowName setHeigth:userInputSize.heigth setWidth:userInputSize.width]
}
@end
我不希望发送实际消息的信息,因为我知道这些参数很可能是错误的,但我想知道在哪里可以找到为窗口名称写的内容。
请注意:问题是我不知道在哪里发送消息。
我的其中一个文件名为MainMenu.xib,如果有帮助的话。
答案 0 :(得分:1)
我不希望发送实际消息的信息,因为我知道这些参数很可能是错误的,但我想知道在哪里可以找到为窗口名称写的内容。
Windows没有名称。
一个窗口有一个标题,但是显示给用户 - 你不能用它来识别窗口。
您需要的是一种将笔尖中的窗口连接到代码的方法。您需要在代码中使用某种插座来插入窗口。
总之: outlet 。
你可能已经有了一个。 Xcode的非基于文档的应用程序模板在应用程序委托中包含window
出口,默认情况下已连接。查看DelegateAppDelegate标头以确保。
因此,您只需将setFrame:display:
消息发送至self.window
。