問題タブ [nsscroller]

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 に答える
290 参照

nsview - カスタム NSView で NSScroller を使用する方法

2 つの NSClipView を持つカスタム NSView があります。各クリップビューに垂直スクローラーを追加したい。以下のスニペットは NSScroller を示していますが、ノブやボタンは描画されていません。インタラクションも不可。NSScroller は小さなクラスなので、ここで何が欠けているのかわかりません。

0 投票する
2 に答える
1085 参照

objective-c - NSScrollView: システムの表示設定をオーバーライドしますか?

次のように設定されたNSScrollViewがあります。

OS X に接続されているトラックパッドがなく、デフォルトでNSScrollView、コード内の設定が無視され、スクローラーが常に表示されるように強制されることに気付きました。

設定

システム設定を「スクロール時」に変更するか、非表示にするhasHorizontalScrollerなどの設定しかできませんNO。後でマウスのスクロールを無効にしますが、これは私が望む結果ではありません。

デフォルトでは (マウスまたはトラックパッドに自動的に基づく)、ユーザーがトラックパッドを持っていない場合、コンテンツ サイズがフレーム サイズを超えていない場合でも、常にスクローラーが表示されます。ただし、トラックパッドがある場合は、スクローラーが表示されるかどうかに関係なく、コンテンツの上にあるオーバーレイ スタイルになります。

2つの違いは、「レガシー」スタイルがスクローラービューのスペースを占有することです。計算のために値を中継しているvisiableRect場合、またはコンテンツが制約によって特定のアスペクト比を維持する必要がある場合、それは問題になります。

それらを無効にせずに強制的に非表示にする方法はありますか?