0

NSTextField サブクラス (「txtField1」と呼ばれ、インターフェース ビルダーでテキスト フィールドのカスタム クラスとして使用されます) があり、このクラスからインターフェース ビルダーに存在する NSComboBox オブジェクトにアクセスできるようにしたいと考えています。

これは私のコードです: txtField1.h:

#import <Cocoa/Cocoa.h>

@interface txtField1 : NSTextField

@end

txtField.m:

#import "txtField1.h"

@implementation txtField1

-(void)mouseDown:(NSEvent *)theEvent
{
    HERE I would like to be able to write something like:
    [combobox SetHidden:YES];
}

@end

mouseDown イベントで、コンボボックスの SetHidden プロパティへのアクセスを設定できるようにしたいと考えています。その方法を教えてください。インターネットで見つけたさまざまな解決策を試しましたが、何も得られませんでした! どんな助けでも大歓迎です。

4

2 に答える 2

1

ここに多くの方法と答えがあります:

別のビューからボタンを介してラベルを更新する

Xcode - 別のビューから ViewController ラベル テキストを更新する

別のクラスでラベル テキストを設定する

別のビューのラベルを保存された NSDate に設定します

編集:

-(void)mouseDown:(NSEvent *)theEvent
{
    HERE I would like to be able to write something like:
    [combobox SetHidden:YES];
    /*
        use the shared instance of comboBox here and make it hidden.
        Also, you can use binding to make it hidden
    */
}
于 2013-03-04T17:09:39.873 に答える
0

私の観点からすると、txtField1クラスはこのコードに適した場所ではありません。

NSControlTextEditingDelegateプロトコルをNSViewController実装 (すでにIBOutletfortxtField1とが含まれている) に追加comboboxし、メソッドで非表示– control:textView:doCommandBySelector:を実装できます。NSComboBox

于 2013-03-04T17:12:27.127 に答える