問題タブ [nsscrollview]
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.
cocoa - setHasHorizontalScroller:NOの場合、NSScrollViewはスクロールできますか?
NSScrollView のスクローラーを「非表示」にして、ジェスチャースクロール動作を取得することは可能ですか?
cocoa - NSScrollView に非常に大きな documentView を使用しても問題ありませんか?
NSScrollView に表示したい非常に長いデータ セットがあります。
数十億ピクセルの仮想 documentView 幅を指定する方法はありますが、clipView サイズの実際の documentView にレンダリングするだけですか? 大きな documentView を使用するとうまくいくように見えますが、正しいことではないようです。
普通の NSView を使用したいのですが、マウス/ジェスチャー スクロール機能を無料で利用したいと考えています。
cocoa - NSScrollView の問題
iKImageBrowserView を含む NSScrollView があります。スクロールビューで setWantsLayer:YES を呼び出さないと、垂直スクローラーは表示されません。何が問題であり、それを修正する方法を知っていますか (レイヤーをアクティブにすると、アプリで他の問題が発生します)
ご協力いただきありがとうございます、
よろしく、
java - NSScrollview、Java と統合した場合の Webview のサイズ変更の問題
Java 環境と統合されたデスクトップ フレームワークを開発しています。つまり、フレームワークは、Java ビューに追加される NSView を作成します。
フレームワークで作成されたビューには、サブビューとして scrollview があります。NSView と scrollview の両方に、NSViewWidthResizable と NSViewHeightResizable として自動サイズ変更マスクがあります。
Cocoa サンプルでサイズ変更を試みると、これらのビューのサイズ変更は正常に機能します。ただし、Java ビューのサイズを変更すると、スクロール ビュー (ドキュメント ビュー) が正しく更新されません。この問題は、scrollview/webview (ドキュメント ビューを持つ) がサブビューの場合にのみ発生します。
これの理由は何ですか?これを解決するにはどうすればよいですか?
objective-c - カスタム NSScrollView は NSTableHeaderView をスクロールしません
NSTableView
カスタム サブクラス内に埋め込まれておりNSScrollView
、次のようにプログラムでスクロールすることがあります。
これを行うと、NSTableView
スクロールは正常に行われますが、関連するNSTableHeaderView
ものは一緒に移動しません。ただし、マウスを使用して通常どおりスクロールすると、本来のNSScrollView
ように一緒に移動します。
おそらく、スクロールすることになっていることを知らせる1行がどこかに欠けているだけだNSTableHeaderView
と思いますが、それが何であるかはわかりません。誰でも助けることができますか?
cocoa - スクロール イベントを親 NSScrollView に渡す方法
大きなスクロール ウィンドウ内に固定サイズの NSTextView が必要です。IB では、テキストビューが実際にはスクロールしないように最小/最大サイズが固定されていても、テキストビューが独自の NSScrollView 内にある必要があります。テキストビュー フレーム内でトラックパッド ジェスチャが行われると (フォーカスがあるかどうかに関係なく)、テキストビューのスクロールビューによってキャプチャされるため、何も起こりません。
テキストビューのスクロールビューに、スクロールイベントをウィンドウのメインスクロールビューに渡すように指示するにはどうすればよいですか? (または、ウィンドウのメイン スクロール ビューに、これらのイベント自体を処理し、子スクロール ビューに渡さないように指示する方法を尋ねる必要があるかもしれません。)
IB 構造は次のようになります。
- 窓
- ウィンドウのコンテンツ ビュー
- ウィンドウの大きなスクロールビュー (スクロール イベントの目的のターゲット)
- 箱
- 別のxibのスワップ可能なコンテンツビュー
- テキストビューのスクロールビュー
- テキストビュー
- テキストビューのスクロールビュー
- 別のxibのスワップ可能なコンテンツビュー
- 箱
- ウィンドウの大きなスクロールビュー (スクロール イベントの目的のターゲット)
- ウィンドウのコンテンツ ビュー
objective-c - NSScrollView で垂直スクロール スタイルを設定する
で垂直スクローラーのスタイルを設定するにはどうすればよいNSScrollView
ですか?
cocoa - NSScroller のサブクラスが描画されない
私は NSScrollView を持っています。ユーザー mouseDown がいつ NSScroller にあるのか知りたいです。(mouseDown をオーバーライドするために) NSScroller をサブクラス化すると、NSScrollView の水平スクローラーが描画/表示されなくなります。NSScroller の drawRect をオーバーライドすると (そしてそのスーパービューを使用して描画を行うと)、予想される NSRect で呼び出されますが、何も描画されません。私は何が欠けていますか?
- 実際には、予想される HScroller 領域の右側に垂直スクローラー トラックの 15x15 セグメントがあるようです。たぶん、setFrameRotation などを指定する必要があるかもしれません... MyHScroller の drawRect で NSFillRect を呼び出すと、予想される rect が描画されます - 90 度回転すると、予想される HScroller 領域の左側に 15x15 しか塗りつぶされません。
これが私の NSScrollView 作成コードです:
NSScroller サブクラスは次のとおりです。
MyScrollView は、スクロール同期用に関数が追加された単なる NSScrollView オーバーライドです。
cocoa - NSScrollView の documentView を CGFloat 範囲を超えてスクロールする
NSScrollView が CGFloat の 24 ビットを超えてスクロールする 32 ビット ビルドで問題が発生しています (32 ビットではフロート、64 ビット ビルドではダブル)。
documentVisibleRect の描画が常に有効な座標を使用するように、「画面サイズ」(つまり、フロート範囲) の documentView と int64 オフセット (または同様のもの) を指定する方法はありますか?
...または、ここで本当に基本的なものが欠けていますか?
また、(ちょっと興味があります)、ストリート レベルにズームされた現実世界の地図のようなものを無限にスクロールするにはどうすればよいでしょうか。
cocoa - NSScrollView でビューのスワップ/再利用を処理するインテリジェントな方法はありますか?
バックグラウンド:
NSCell のサブクラス化を試みるのではなく、Interface Builder でビューをレイアウトできるという点で UITableView の使いやすさを提供する、Cocoa/Objective-C でビューベースの NSTableView 風のコントロールを構築しています。また、UITableView のような同様の再利用可能なセル パラダイムを採用しているという点で、そのリソースもスマートです。もちろん、これはすべて NSScrollView 内で行われます。
トリッキーなビューのスワッピングのほとんどを把握し、機能させました。スクロール時にビューが完全に切り取られている場合、そのビューは未使用のビューのプールに追加されます。同様に、表示されていないビューが表示可能領域に入ると、未使用のプールからビューを取得しようとします。使用可能なビューがない場合は、ビュー プロトタイプを保持する nib から新しいビューを作成します。
似たような解決策が存在しますが、私はいじくり回すのが好きで、自分で実装することを楽しんでいます :) . ただし、この問題を処理する解決策がわからないので、アドバイスが必要です!
問題:
たとえば、各ビューにテキスト フィールドが含まれているとします。テキストフィールドが編集されていて、ユーザーがスクロールを開始した場合、そのセルがプールに解放されないようにして、新しく表示されたビューに「フォーカスを失う」または「フォーカスを与える」ことがないようにしたいと思います。リリースされたものを再利用します。カスタムビューを作成したプログラマーがイベントを傍受し、そのようにマークする必要なく、ビューを編集中としてマークするインテリジェントな方法はありますか?
助けてくれてありがとう!