1

私は鉄筋選択のためのこのシンプルなアプリを持っています。バインディングを使用して接続を設定しました。また、最初にアレイコントローラーから呼び出されるデータがいくつかあります。NSFormセルから値を取得し、それをさらに計算するために使用するボタン計算が押された後、このメソッドを実行しています。

-(IBAction)calculate:(id)sender{
NSArray *editFields = [formular cells];
int vArea;
vArea = [[editFields objectAtIndex:1] intValue];
NSMutableString *select = [NSMutableString stringWithFormat:@"You selected %d + 25 = %d",vArea,vArea+25];
[selected setStringValue:select];

}

正常に実行されていますが、テーブルの行が選択された直後にこのコードを実行したいので、そのボタンは必要ありませんが、まだ学習中であるため、どの方法を使用すればよいかわかりません。

scrennshot

4

2 に答える 2

0

私も学んでいるだけなので、これは最善の方法ではないかもしれません。クラスがNSTableViewのデリゲートとして設定されている場合は、次のメソッドを実装できます。

テーブルビューは、選択が変更されたことをデリゲート(クラス)に通知します。その時点で、計算を実行できます。

    - (void)tableViewSelectionDidChange:(NSNotification *)aNotification
    {
        int row;
        row = [myTable selectedRow];

        if (row == -1) 
        {
            NSLog(@"No Row selected");
        } 
        else 
        {
            NSLog(@"Selected Row = %d", row);
        }
    }
于 2012-07-09T03:30:29.440 に答える
0

解決策はとても簡単でした。tableViewオブジェクトにIBActionを割り当てるだけで、すぐに機能します。この投稿で申し訳ありませんが、ここに何かを投稿する前に、もっとよく考えます。

于 2012-07-09T09:15:11.313 に答える