問題タブ [nssegmentedcontrol]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - NSSegmentedControlのタグの選択
IBにNSSegmentedControlボタンを実装しようとしています。
私はそれを接続しています- (IBAction)editCart:(id)sender;
また、に接続されていますNSSegmentedControl *editCartButton;
最初の「セグメント」は、カートの値を減らすための「-」ボタンです。2番目の「セグメント」はカートの値を増やすための「+」ボタンです。
次のように「sender」値を使用しようとすると[sender selectedSegment]
、次のエラーが発生します。
-[NSTableView selectedSegment]: unrecognized selector sent to instance 0x100622aa0
私のボタンはNSTableView内にあります。
私も試しました:[[editCartButton cell] selectedTag]
条件を実行すると、常に(null)の値が返されます。取得する予定の0と1の特定のタグを取得したいのですが、適切なアクションが見つかりません。
よろしくお願いします。
objective-c - nssegmentedcontrol をサブクラス化しますか?
このようなコントロールを作成する最良の方法は何ですか?
私はそれが NSSegmentedControl であり、セルをサブクラス化する必要があると仮定していますか? でもセカンドオピニオンが欲しかった。ありがとう、
ラジコン
注: 明るいコントロールは Twitter Mac からのもので、暗いコントロールは Rapidweaver からのものです。
objective-c - キーボードで NSSegmentedControl を制御する
Cocoa アプリに、キーボードから制御できるようにしたい NSSegmentedControl を含むフォームがあります。ただし、NSSegmentedControl はファーストレスポンダーになることを非常に嫌がっているようです。
ウィンドウの最初のファーストレスポンダーをセグメント化されたコントロールに設定しても、何も起こりません。ウィンドウが最初に読み込まれたときに、キーボード フォーカスがありません。ただし、次のようにファーストレスポンダーを手動で設定すると、フォーカスを受け取ります。
[segmentedControl.window makeFirstResponder: segmentedControl];
フォームの唯一の部分がセグメント化されたコントロールである場合、これはうまく機能します。別のフィールド (NSTextField など) を追加し、セグメント化されたコントロールの nextResponder をそのフィールドに設定すると、セグメント化されたコントロールはファーストレスポンダーにはなりません。フォーカスはすぐにテキスト フィールドに移動し、タブを押してセグメント化されたコントロールに戻ることはできません。
NSSegmentedControl をサブクラス化し、acceptsFirstResponder、becomeFirstResponder などをオーバーライドしようとしましたが、役に立ちませんでした。違いを生むのはresignFirstResponderだけです。そのメソッドからNOを返すと、セグメント化されたコントロールは実際にフォーカスを保持しますが、常にフォーカスを保持したくないことは明らかです。
コントロールを通常のレスポンダーのように動作させる方法についてのアイデアはありますか?
custom-controls - NSSegmentedControl setFrame は無視されますか? (NSSegmentedControl のカスタマイズ)
NSSegmentedControl をカスタマイズしたい。最初にやりたいことは、コントローラーの高さを変更することです。インターフェイス ビルダーでは、NSSegmentedControl の高さフィールドが無効になっています。したがって、コード内のフレームを変更して高さを変更しようとするだけです
しかし、何も起こりませんでした。
NSSegmentedControl を変更することは完全に不可能ですか。
それができない場合は、2 つの NSButton を使用して独自に実装しました。
ありがとう...(あなたの将来の助けのために)。
cocoa - NSSegmentedCellサブクラスの描画
NSSegmentedCellのサブクラスを作成し、次のようにdrawWithFrameを実装しました。
問題は、アプリの最初の起動時にセグメントが描画されなかったことです。セグメント化されたコントロールが描画されるはずの空白の領域をマウスでクリックした場合にのみ表示されます。ここで欠落しているものを教えてください。
ありがとう、
macos - COCOAMacアプリケーションのNSSegmentedControlボタンのキーボードショートカット
私のCOCOAMacアプリケーションには、キューのオン/オフ機能用のNSSegmentedControlボタンが1つあります。今、私は同じためのキーボードショートカットを提供する必要があります。たとえば、キューがオンの場合、すでにオフになっている場合はオフになり、その逆も同様です。
このタイプの機能を実行した人はいますか?
よろしく、バルン
localization - Xcode 4.5 ベースのローカリゼーションと NSSegmentedControl の問題
Base Localization を使用して NSSegmentedControl のタイトルを変更できません。
Xcode は英語とフランス語のファイルを生成します。各セグメントのタイトルを翻訳しますが、xib ファイルと同じままです。
他のセグメント化されたコントロールのツール ヒントについても同じことが言えます。
他のすべてが完全に正常に機能しているため、これはこの特定のタイプのコントロールのバグだと思います。
他の誰かがこの問題を確認できますか? (Xcode 4.5.2、MacOS 10.8.2)
cocoa - ITunes 11 の新しいユーザー インターフェイス
Itunes 11 では、新しい UI 要素が導入されました。これは、ツールバーの下にある追加のボタン行です。
この新しい行の目的の 1 つは、NSSegmentedControls を置き換えることです。
どのように呼び出され、Xcode Interface-Builder またはコードでどのようにビルドしますか。
cocoa - NSTableView + NSSegmentedControl + NSSegmentSwitchTrackingSelectAny
一番右の列に NSSegmentedCell を持つテーブル ビューがあります。
セルがプルされる NSSegmentedControls は、「any」追跡モード (別名: 複数選択) を使用しており、セグメントは、可能な値: 1、2、および 4 のビットフィールドに基づいて選択されます。値 1 は、A|b を意味します。 |c. 2 は a|B|c です。4はa|b|Cです。3 は A|B|c などです。
そのビットフィールドはデータ ソースの tableView:objectValueForTableColumn:row: メソッドによって返され、セルはデリゲートの tableView:dataCellForTableColumn:row: メソッドで返されます。
tableView:dataCellForTableColumn:row: でセルを個別に設定しても何も起こりません。これは、テーブル ビューがその直後に tableView:objectValueForTableColumn:row: を呼び出してその列の値を取得し、それを使用して列の「値」を設定するためです。セグメント化されたコントロール/セル。
問題はその時点です。
ビットフィールドがセグメントのインデックス値として誤って解釈されているようです: A の場合は 0、B の場合は 1、C の場合は 2 (および選択なしの場合は -1)...単一選択を想定しています。
テーブル ビューが複数のセグメントを適切に設定するように、この設定を行うにはどうすればよいですか? (例: ビットフィールド 3 = A|B|c)
xcode - Xcode4.6.1でのセグメントクリックに対するアクション
新しいバージョンのXcodeでは、セグメントがクリックされたときにIBActionを開始する方法が表示されません。