0

以前に使用したボタンの機能を変更するにはどうすればよいですか?たとえば、「続行/キャンセル」を実行するボタンがあり、「続行」とすると、ボタンは「表示/戻る」などに変わりますか?基本的には同じボタンを他の何かに再利用したいのですが、どうすれば誰かがそれをよりよく理解するのを手伝ってくれるのかわからないので。ありがとうございました。

- (IBAction)someButton:(NSButton *)sender {

       if ([someString isEqualToString:someThing]) {
            isAllowed = YES;
            [oneButton setTitle:@"Proceed"];
            [self continue];
        }
        else {
            [oneButton setTitle:@"Cancel"];
            return;
            }
        }

- (void)continue {

// I would like to make someButton (above) take on different functionality 
// here if that's even possible. such as:

  [oneButton setTitle:@"View"];
  [self whatNow];
4

1 に答える 1

3

プログラムライフサイクルのある時点で、aの以前のターゲットやアクションを目的のターゲットに置き換えることができますNSButton

[oneButton setAction:@selector(continue)];

これにより、インスタンスcontinueの代わりにセレクターが呼び出されます。someButton:oneButton

@selector(someButton:)OBS:NIBファイルからのものにはパラメーターがあり、作成しているものにはパラメーターがないため、セレクターに注意してください。@selector(continue)

ここに見られるように:Cocoa forControlEvents:WHATGOESHERE

于 2012-09-09T21:16:32.647 に答える