問題タブ [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.

0 投票する
1 に答える
1143 参照

objective-c - NSSegmentedControl の背景画像を設定するにはどうすればよいですか?

アイコン画像ではなく背景画像を設定したいのですが、NSSegmentedControlサブクラス化しNSSegmentedCellて関数を書き直しましたが、drawSegment: inFrame: withView:うまくいきません。

更新: 半長方形の暗い色または明るい色の背景画像を設定したい。

0 投票する
1 に答える
1027 参照

macos - 等間隔の NSSegmentedControl を作成するには?

幅を設定したい NSSegmentedControl があり、このコントロールに指定したすべてのスペースを埋める必要があります。また、NSSegmentedControl のセグメントをすべてのセグメント間で (利用可能なスペースやコンテンツとは関係なく) 均等に配置したいと考えています。どうすればそれを達成できますか?

前もって感謝します。

0 投票する
1 に答える
1186 参照

objective-c - Xcode 4 のようなツールバー内の NSSegmentedControl

XCode 4 ツールバー (ビューまたはエディター) にあるような NSSegmentedControl を実装したいと思います。その中の画像を調整できず、Interface Builder を使用してフレームをセットアップできません。従うべき最善の戦略は何ですか?

0 投票する
1 に答える
368 参照

objective-c - NSSegmentControl の高さを調整するには?

NSSegmentControl の高さは調整できません。

それを行う方法を知っている人はいますか?

私にお知らせください。どうもありがとう。

0 投票する
0 に答える
1055 参照

ios - iOS セグメント化されたコントロール。テキストと色合いが異なる複数行のラベル

現在、境界線とは異なるテキストの色を使用するが、複数行にまたがる UISegmentedControl を実装しようとしています。

this question for multiline を使用して、両方の作業を別々に行うことができました

UISegmentedControl 内の 2 行のテキスト

テキストの色に Appearance プロキシを使用します。

ただし、両方のソリューションを組み合わせるとすぐに、マルチライン機能が失われます! コードをさまざまな順序で配置しようとしたので、外観プロキシを使用した後にラベルをループしますが、うまくいきません。また、NSLineBreakByWorkWrapping の lineBreakingMode でカスタム NSParagraphStyle を使用しようとしましたが、これも機能しません。

どうすればこれを達成できるか考えている人はいますか?

0 投票する
1 に答える
466 参照

cocoa - NSSegmentedControl ユーザーデフォルトで選択されたセグメント

セグメント化されたコントロールの selectedSegment をユーザー デフォルトに格納する際に問題が発生しました。私はセグメント選択バインディングを使用しており、これを行ってデフォルトを設定して呼び出しています:

動作していません。誰かが私を助けることができますか?

-ありがとう

ポール。

0 投票する
0 に答える
752 参照

objective-c - NSSegmentedCell サブクラスとカスタム ジオメトリ/レイアウトは不可能ですか?

2 つのサブクラスの物語

ベン・ストック

プロローグ

私は、使用されているウィンドウの種類に応じて外観を自動的に変更する、非常に見栄えの良いコントロールのセットを作成中です (たとえば、通常のウィンドウにボタンをドロップすると、他の標準的な Aqua のように見えます)。ボタン.ただし、NSPanelウィンドウ マスクが の の上にドロップすると、NSHUDWindowMaskそのスタイルが HUD バックグラウンドで見栄えがするように自動的に切り替わります. これまでのところ、 , , および をサブクラスNSButtonNSTextFieldNSSliderましたNSSearchField.NSTabViewカスタマイズ性の欠如に打ちのめされる. それは本当にお尻の痛みですが, 私は開発者なので、自分のやり方を見つけることに慣れていますNSSegmentedControl.によって使用されるプライベート タブのNSTabView. ここまでは順調ですね。ボタンは選択可能で、新しいNSTabViewItemが追加されると自動的に更新され、本物と同じように機能します。

そして痛みが始まる…</h2>

最後に、私は自分のセグメントのスタイルを設定し始めます.WTF 私は自分自身を手に入れました. Objective-C の開発は、私の人生をゆっくりと何年も短縮しています。何をしてもNSSegmentedCell、セグメント幅が変更されたときに で使用される「トラッキング エリア」が更新されていないようです。幅が変わると、アートワークも変わります。ただし、実際のトラッキング エリアは更新されません ( をオーバーライドしても-updateTrackingAreas。説明するのは非常に難しいので、 in で描画されたものの前後にセグメントの四角形描画することにしました。これが私のアートが上に描かれたスクリーンショットです)。基礎となるトラッキング エリアの:super-drawSegment:inFrame:withView

デバッグ用の長方形を表示する Mac OS X の HUD パネル。

そしてsuper、これが私のセグメント四角形の上の の実装です:

ここに画像の説明を入力

考えられるすべてをオーバーライドしようとしました。以下に、私がオーバーライドした (およびオーバーライドしなかった) メソッドのいくつかを示します。

  • -cellSize( NSSegmentedCell)
  • -cellSizeForBounds:( NSSegmentedCell)
  • -sizeToFit( NSSegmentedControl)
  • -intrinsicContentSize( NSSegmentedControl)
  • -setWidth:forSegment:( NSSegmentedControl/ Cell)
  • -startTrackingAt:inView:( NSSegmentedCell)
  • -continueTracking:at:inView:( NSSegmentedCell)
  • -stopTracking:at:inView:mouseIsUp:( NSSegmentedCell)

この時点で、上記のリストのメソッドのいくつかはまだ私のオーバーライドを使用しており、いくつかは使用していません。組み合わせて、削除して、単純化し、書き直して、リファクタリングしましたが、何をしても、下にある四角形は変わりません。私は次の男と同じくらい Apple を愛していますが、カスタマイズに対する彼らの見方は変える必要があります。これらすべてのばかげたコントロールの実装で何が起こっているのか理解できないのは我慢できません。言うまでもなく、 Auto Layout についてはまだ完全には理解できていません (これは、私が今まで扱った中で最も「自動」ではないことです) が、それはまた別の機会に投稿します。とにかく、誰か兄弟を助けることができれば、私はとても感謝しています. 暴言を吐いてすみません、読んでくれてありがとう!

PS これらはいずれも完成していないため、いくつかのピクセルの欠陥についてはあまり気にしないでください。;-)