我有几个NSButton按钮,它们都连接到同一个IBAction。我需要在方法内区分不同的按钮。我尝试了以下方法,但是它没有起作用:
for (int i = 0; i++; i < 7) {
if (sender == [NSString stringWithFormat:@"button%i", i+1])
{
NSLog(@"sender is button %i", i+1);
}
}
如何使此功能可用?
我有几个NSButton按钮,它们都连接到同一个IBAction。我需要在方法内区分不同的按钮。我尝试了以下方法,但是它没有起作用:
for (int i = 0; i++; i < 7) {
if (sender == [NSString stringWithFormat:@"button%i", i+1])
{
NSLog(@"sender is button %i", i+1);
}
}
如何使此功能可用?
-(IBAction)buttonPressed:(id)sender
{
switch ( [sender tag] )
{
case 1:
//blah blah blah
break;
case 2:
//blah blah etc.
break;
}
}
if (sender == [NSString stringWithFormat:@"button%i", i+1])
使用这行代码
if ([sender tag] == i)
for (int i = 0; i++; i < 7)
s/b:
for (int i = 0; i < 7; i++)
在btnClicked操作中的发送者是被点击的按钮对象。从那里,您应该能够获取所需的信息。
-(IBAction) btnClicked: (id) sender {
NSLog(@"Button clicked %@", sender);
// Do something here with the variable 'sender'
}
sender.tag
中存储了一个值,也可以通过这种方式确定按钮。