3

我有一个 NSSearchField:

[searchField setAction:@selector(doSearchWithQuery:)];

这是我的 doSearchQuery:

-(void)doSearchWithQuery:(NSString*)query{

如何将搜索字段的内容传递给 doSearchWithQuery?

4

1 回答 1

4

你不能完全按照你描述的那样做。选择器不做任何事情或接受任何参数——它只是要发送的消息的名称。您只能在实际发送消息时传递参数。但是,控件总是将自己作为参数传递给它们的操作,因此您需要一个包装器方法,如下所示:

- (void)doSearchFromSearchField:(NSSearchField *)sender {
    [self doSearchWithQuery:[sender stringValue]];
}

并将其设置为操作。

于 2010-12-07T01:03:39.153 回答