【问题标题】:cocoa:Why the event is not running?cocoa:为什么活动没有运行?
【发布时间】:2012-04-30 11:05:45
【问题描述】:

NSLog(@"ss")execution.为什么事件没有运行?

-(void)mouseUp:(NSEvent *)theEvent{
    switch (self.tag) {
        case 3:
            NSLog(@"ss");
            [self setAction:@selector(openurl:)];
            break;
        default:
            break;
    }
}

- (IBAction)openurl:(id)sender {
    [[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"http://www.google.com/"]];
}

【问题讨论】:

    标签: objective-c macos cocoa xcode4.3


    【解决方案1】:

    您的代码正在设置操作,但未发送。设置动作只是告诉控件在发生某些事情时要发送什么动作。并且由于您似乎还覆盖了-mouseUp:,因此不会发生控件对鼠标向上的正常事件处理,并且可能永远不会发送操作。

    【讨论】:

    • 不能在mouseUp事件里面设置?
    • 我该怎么做? [button setAction:@selector(openWeibo:)];也不是实现。
    • 通常您不需要在事件处理程序中为控件设置操作。如果您使用的是 .xib,请将其设置在那里。如果您以编程方式创建控件,请在创建控件时设置控件的操作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-16
    • 2020-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多