問題タブ [scrolledcomposite]

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

scroll - SWTコンポジットをスムーズにスクロールするには?

SWT ScrolledComposite を使用していますが、Windows でスクロールすると、高速にスクロールするとティアリングやちらつきが発生します。ダブルバッファリングまたはこの影響を軽減するにはどうすればよいですか? または、デフォルトのスクロール機能をオーバーライドしてよりスムーズにスクロールするにはどうすればよいですか? スクロール領域にテキスト ボックスがあるので、キャンバスは機能しないと思います。

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

eclipse - Eclipse RCP画像アプリケーション:画像をレイアウトするにはどうすればよいですか?

ビューを表示するEclipseプラグインがあります。私がやりたいのは、各画像の下に中央のラベルが付いた1行のビューにn個の画像を表示することです。スクロール可能に表示したい。 また、ビューのサイズ(ScrolledComposite?Composite?)が変更されたときに各画像のサイズを変更して、使用可能な垂直および水平のクライアント領域を利用できるようにします。

createViewPartメソッドに以下を実装しました(宣言とエラーチェックは省略されています)。

この時点からの最善のアプローチは何ですか?

  1. Compositeをサブクラス化し、そのクラスに特定の画像を描画させ、画像の下にラベルを中央に配置する必要がありますか?
  2. ラベルを画像の下の中央に配置するには、どのレイアウトマネージャーを使用する必要がありますか?
  3. サブクラスの「親」パラメーターは「myComposite」である必要がありますか?
  4. 「myComposite」ではどのレイアウトマネージャーを使用する必要がありますか?
  5. 画像のサイズ変更に関しては、「myComposite」のgetBounds(サブクラス化されたコンポジットのgetBounds)を使用して、使用可能な幅と高さを計算しますか?

ご協力いただきありがとうございます。

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

java - SWT: ScrolledComposite を使用したネストされたレイアウトが使用可能なスペースを超えています

SWT を使用してアプリケーションの 1 つのマスター/ディテール レイアウトを作成したいと考えています。

Container、Content、Sidebar、および Part1 は Composite インスタンスです。Scrolled は ScrolledComposite です

望ましいレイアウトは次のようなものです。

コンテンツは、使用可能な水平方向および垂直方向のすべてのスペースを取得する必要があります。

サイドバーは、基本的に同じ高さの Part1 と Scrolled のコンテナーです。

Scrolled は、コンテンツ コンポジットに配置される動的な数のサブアイテムを含むコンポジットのコンテナです。サブアイテムの数には大きな変動がある可能性があるため、この Composite はスクロール可能である必要があります。

これを次の方法で実装しました。

  • コンテナーには、2 つの列を持つ GridLayout があります。

  • その内部では、コンテンツは FILL_BOTH 動作を行い、すべての HORIZONTAL/VERTICAL スペースも取得します。

  • サイドバーには FillLayout(SWT.VERTICAL) があり、Part1 と Scrolled Childs が含まれています。

問題: スクロールされたコンポジットに多くのアイテムを配置すると、レイアウトが使用可能なスペースをオーバーフローし、本来あるべき場所でスクロールできなくなります。

コンテナに FillLayout(SWT.HORIZONTAL) を使用すると、スクロールがあり、すべてが「境界内」にあるため、動作は希望どおりです。

GridLayout を使用するときにもこの動作を実現する方法はありますか?

現在のテスト SWT スニペットを添付:

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

size - SWT コンポジットの最大サイズ

私は ScrolledComposite を持っていますが、その内容は切り捨てられています。Google で検索したところ、これが Windows の既知の問題であることを認識しています。

私が見つけることができる唯一の提案された回避策は、canvas.scroll 機能を使用することです。

問題の経過を考えると、より良い回避策があるかどうか疑問に思っていましたか?

ありがとうございました!

(編集: 執筆時点でのリンクは次のとおりです: http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet48.java ?view=markup&content-type=text%2Fvnd.viewcvs-markup&revision=HEAD )

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

eclipse - ScrolledComposite は画面を縦に分割し、コンテンツは右半分に表示されます

ここで言及されているメソッド2に基づいて、既存のコントロール(多くの子を持つ)にScrolledCompositeを使用しています: http://www.placelab.org/toolkit/doc/javadoc/org/placelab/util/swt/SwtScrolledComposite.html

唯一の変更点は、新しいシェルとディスプレイを作成する代わりに、既存のコントロールの親を使用していることです。期待どおりにスクロール バーが表示されますが、既存のコントロール/コンテンツが最初からではなく中央から表示されます。レイアウトの前半 (垂直分割) は空で、実際のコントロール/コンテンツは右半分に表示されます。境界、起源、サイズなどを確認しました。問題ないようです。

スクリーンショットの投稿はこちら:http://img818.imageshack.us/i/contentstartsfrommiddle.jpg

手がかり

前もって感謝します

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

java - SWT StyledText には高さ制限がありますか?

ScrolledComposite 内に表示される StyledText ボックスを含むアプリケーションを作成しようとしています。StyledText ボックスに多数の行を表示するのに問題があります (2,550 を超えると問題が発生するようです)。

StyledText ボックス自体にスクロール バーがあってはなりませんが、ScrolledComposite を介してスクロール可能である必要があります。StyledText の下と上には、スクロール可能にする必要がある他の項目があり、複数のスクロール バーは必要ありません。

したがって、大量のデータを使用すると、特定の高さで停止するように見える非常に大きな (高さのように) StyledText ボックスがあります。

スクリーンショット

問題は、StyledText がその内容と同じ高さである必要があり、そうではないことです。下のギャップの理由は、含まれているコンポジットが StyledText がその高さであると報告するものをサイズ変更しているためですが、これは実際にはその高さではありません。

私の問題を説明するための単純化されたコード例を次に示します。

更新: 興味深いことに、この問題は SWT ラベルと SWT テキストで発生します。

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

java - SWT ScrolledComposite は、32768 ピクセル以降のキャンバスで生成された画像を切り取ります

そこで、特定の「モデル」に応じて、高さ 50 ピクセル、長さ約 84600 ピクセルの水平の「タイムライン」バーを生成するプログラムを作成しました。各ピクセルは、24 時間にわたって秒単位でイベントをモデリングしているため、1 秒を表します。

問題は、32768 ピクセルを超えるとバーが途切れることです。

ScrolledComposite を使用してキャンバスの一部のみを表示し、スクロールバーがバッファリングを介してドラッグされたときに新しいデータが表示されている間にそのスクロールを行うなどのソリューションを読みましたが、これを行う方法にまったく慣れていません。

私が見た別の解決策は、ScrolledComposite を使用せずに canvas.scroll のみを使用することでした。ソース コードを実行すると (問題を説明するためのテスト プログラム)、スクロールバーがスクロールしてキャンバス全体を表示できないことが明らかになりました。この「ソリューション」のテスト プログラムを以下に示します。助けてください!

編集:ちょっとありがとうp12t! ちょっと質問があります...この行: final PointのtimelineSize = new Point(84600, 50);

これは、x 軸のピクセルごとに「ポイント」があり、y 軸のピクセルが 50 個下にあるということですか? など: ++++++++++

. . . . . . . . . .

したがって、各「+ 記号」は水平方向の x 軸ピクセルであり、84600 の「ポイント」は 50 y 軸ピクセル下に示されている「期間」です。これについての私の理解は正しいですか?(ところで、私が上に示した例は10のポイントを示しています)

また、あなたの意見では、私は何が間違っていましたか? または私はそれを間違って実装しました..

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

java - ScrolledCompositeでGridLayoutを使用する

内部にグリッドレイアウトを持つコンポジットを持つスクロールコンポジットを作成しようとしています。

ただし、スクロールされたコンポジットのコンテンツを設定しようとすると、何もロードされません。これは、グリッドレイアウトのコンポジットにのみ影響するようです。

私は何が間違っているのですか?

私のコード:

0 投票する
3 に答える
6520 参照

java - GridLayoutを使用したScrolledCompositeの親

ScrolledComposite親を持つがGridLayout欲しいのですが、を使用しないとスクロールバーが表示されませんFillLayout。私の問題FillLayoutは、その子が利用可能なスペースの等しい部分を占めることです。

私の場合、ウィジェットは2つあり、一番上のウィジェットはウィンドウの1/4以下を占めScrolledComposite、残りのスペースを占める必要があります。しかし、両方ともその半分を占めています。

GridLayoutwithを使用する方法はありますか、ScrolledCompositeまたはの動作を変更することは可能FillLayoutですか?

これが私のコードです:

0 投票する
3 に答える
1628 参照

java - SWT - computingSize for Multi-line textfield inside ScrolledComposite

I have a composite(innerComposite) within a ScrolledComposite(sc). At runtime, additional UI components can be added. So I'm using the code below to set the minimum size of the sc to enable scrolling, in case that the additional UI components "overflow" the sc.

One issue is with the SWT Multi-Line textfield inside this sc/innerComposite.

When I enter a long text into this multi-line textfield, the vertical scrollbar will appear, (which is what I wanted!). However, when I call the code above to recompute the size and setting the sc.setMinSize()...the multi-line textfield's height will expand to fit the length of the text entered. This is not what I wanted. I want this height to remain on with the scrollbar and not resize to fit the text entered.

I know computeSize will cast its children to resize to the preferred size. I don't want this to happen to the multiline textfield as it has the capability of scrolling the vertical bar.

How can I prevent this from happening?