我正在尝试在运行Xcode 4.2的Snow Leopard MacBook上创建一个Cocoa Objective-C程序。 这是我想做的。

我有一个文本框,一个包装标签和一个按钮。 当您在文本框中输入名称时,包装标签将显示: "Have a merry merry christmas 'the name entered in the textbox'"

    //  AppDelegate.h
    #import <Cocoa/Cocoa.h>
    @interface AppDelegate : NSObject <NSApplicationDelegate>
    {
        IBOutlet id inputTextField;
        IBOutlet id outputTextField;
    }
    @property (assign) IBOutlet NSWindow *window;
    - (IBAction)pressMeButton:(id)sender;
    @end

    //  AppDelegate.m
    #import "AppDelegate.h"
    @implementation AppDelegate
    //Use the pressMeButton IBAction to tell the inputTextField to display on the outputLabelField
    - (IBAction)pressMeButton:(id)sender;
    { 
        char inputString = [inputTextField charValue];
        char outputString = [outputTextField charValue:(@"Have a merry merry Christmas, %@", inputString)];
        [outputTextField outputString];
    }
    @end

我尝试了NSString,但不确定在这里做错了什么。

===============>>#1 票数:4 已采纳

您很近,但同时又很远。 将字符序列存储为char类型(用于单个char)没有任何意义。 同样,调用实际上是局部变量的消息也没有意义。 无论如何,这里有一些代码可以帮助您。

- (IBAction)pressMeButton:(id)sender;
{
    [outputTextField setStringValue:
      [NSString stringWithFormat:@"Have a merry merry Christmas, %@",
                                   [inputTextField stringValue]]];
}

请务必阅读入门文档和StackOverflow 常见问题解答,以了解如何以期望的格式提问。

===============>>#2 票数:1

或者您可以用AppleScript编写它:

set nameReturned to the text returned of (display dialog "Name:" buttons {"OK"} default button 1 default answer "" with icon 2)
display dialog "Happy Christmas " & nameReturned & "!"

  ask by rowrz translate from so

未解决问题?本站智能推荐: