問題タブ [jcomponent]

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 投票する
2 に答える
10236 参照

java - JFrame の JPanel 内に JComponent を表示する

JFrame の JPanel 内に JComponent を表示できません。

以下は動作しません。

frame.add(component, BorderLayout.CENTER);しかし、JFrame[like ] にJComponent を追加すると、コンテンツが表示されます。

何か案は

0 投票する
4 に答える
486 参照

java - Custom JComponent with embedded Swing components not positioned in exported image

I have a funny problem trying to export custom Java JPanels to a PNG file. The export process of the components I've been writing up until now have worked flawlessly.

My JPanels include custom-written JComponents (e.g., override paintComponent(Graphics g) and write what I have to).

The export process looks like the following (of the extended JPanel I have):

#xA;

The 'draw()' method above causes all of the JPanel's child components to be re-drawn using the new size of the image to be exported. Works very well.

The problem I have today is that I have one custom JPanel that includes some Swing components (a JScrollPane wrapping a JEditorPane). This JPanel includes one of my custom JComponents and then this second JComponent with the JScrollPane on it.

About 75% of the time, this second JComponent with the JScrollPane is not positioned correctly in the exported image when I perform the export. It is positioned at Point (0, 0) and the size is what it looks like on the screen. The 'draw()' method for this JComponent looks like the following:

#xA;

But about 25% of the time this works - this JComponent with the scrollpane is correctly positioned in my exported image. The re-draw the componment works.

It is like there is some double-buffering going on here that I can't figger out....

Ideas?

0 投票する
4 に答える
6239 参照

java - JComponent のコンテンツは、手動でサイズ変更した後にのみ更新されます

ウィンドウを手動でドラッグすると JComponent が更新されるのに、repaint または revalidate を呼び出しても更新されない理由を理解しようとしています。データを表示する準備ができましたが、手動でサイズを変更するまで表示されません。再描画と再検証を試みたので、誰かが私にできることについていくつかの提案をすることができますか、それとも Swing の問題ではないように聞こえますか?

私が気付いた奇妙なことの1つは、次のコードがある場合です。

最初の行が使用されている場合、JComponent はそれ自体を更新します。これらの行をまったく使用しないか、両方とも使用しないと、奇妙に思えます。

私は基本的に、JDesktopPane の JInternalFrame に JPanel を入れています。私がやろうとしていることには2つの主な機能があります。1 つは新しい JPanel を追加し、もう 1 つはそれを更新しようとするため、新しいデータが表示されます。

ところで、parentContainer は JDesktopPane です

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

java - 更新中に Java が JPanel のコンテンツを再描画しないようにする

多くの子コンポーネントを含む JPanel があります。親JPanelに新しいコンポーネントを更新/追加している間、再描画を防ぎたいのですが、どうすればこれを達成できますか?

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

java - Java Swing JComponent「サイズ」

カスタムスイングコンポーネントが必要なプロジェクトを行っています。これまでのところ、一連の画像を使用して新しいボタンを作成しました (Java Metal の外観は私の UI にまったく適合しません)。MouseListenerこの新しいコンポーネントに実装しましたが、ここで問題が発生します。私のウィジェットは、ホバー、クリックなどで画像を変更しますが、マウスのエントリを画像ではなくコンテナーMouseListener全体にピックアップします。GridLayoutしたがって、約200 * 100の画像があり、周囲のコンテナは約400 * 200であり、画像の上ではなく、そのセクション(空白部分であっても)にmouseEntered入るとメソッドが起動されます。GridLayout画像の上にカーソルを置いたときにのみ起動されるようにするにはどうすればよいですか? サイズと境界、およびその他の属性を無駄に設定しようとしました。

編集:これは私の問題のデモンストレーションです。ご覧のとおり (色は非常に似ています)、右下のボタンは、 のセクションに入るだけで強調表示されますGridlLayout。セクションではなく、実際の画像の上にいるときにのみ強調表示しGridLayoutます。

代替テキスト

MouseListener表示される画像を切り替えるだけなので、メソッドは追加しません。

編集:コードセクションを追加

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

java - カスタムJavaコンポーネントでフレームレートを正しく見つける

フレームレートコードが正しいとは確信できません。また、探しているものの正確な例を見つけることができませんでした。

基本的に、私はサブクラスjava.awt.Component化しており、メソッド内で関数paint(Graphics)を呼び出しcalculateFrameRate()ます。これを以下に示します。でインクリメンタル描画は行いませんupdate()。これからの数は多いようですが、Componentクラスの固有のダブルバッファリングは、ペイントがレンダリングされている量の2倍の量で呼び出されていることを意味するのでしょうか。私はダブルバッファのものにさびていますが、それは完全に間違っているかもしれません。

フレームレートの方法は次のとおりです。

乾杯、

ハミー

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

java - コンポーネントが描画されるまで Java が待機する

私はJavaで一連の画像を次々に表示し、それぞれのフレームのサイズを調整するプログラムを作成しようとしています。JPanel を拡張して、次のような画像を表示しています。

}

次に、イベント スレッドで主な作業を行っています。

createGUI() では、一連の画像を調べています。

問題は、私のプログラムが適切にサイズ変更を行うため、画像は正しく読み込まれますが、何も表示されないことです。画像を1つだけ表示すると、最後の画像でも機能します。問題は、画像の描画が完了する前に Thread.sleep() が呼び出されることだと思います。

ImagePanel がペイントを終了し、その後待機を開始するのを待つにはどうすればよいですか? または、問題を解決する別の方法はありますか?

ありがとう!レオンティ

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

java - サブスタンスUIとカスタムJComponentでのTitledBorderの問題

私はBorderFactorySubstanceUIをテーマにしたSwingユーザーインターフェイスでタイトル付きの境界線を作成するために使用していますが、以下に示す例外が発生しています。試してみましLineBorderたが、完全に機能しますが、SubstanceUIが何らかの形でに干渉しているようTitledBorderです。境界線の描画は、次の方法で行われpaintComponentます。

それ自体が間違っている可能性があります。私の質問は、基本的にTitledBorder、親を作成JPanelしてその上に設定せずに作業を開始する方法です。これは、ちょっとした取り締まりのようです。

助けてくれてありがとう。

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

swing - JComponentの親がいつ設定されたかを判別する

JComponentの親がいつ設定またはリセットされたかを知ることができるSwingAPIメソッドまたはリスナーのタイプはありますか?

0 投票する
4 に答える
7737 参照

java - Swing コンポーネントを複数のコンテナーに追加することはできませんか?

JButton1 つの参照を 2 つに追加してテストしようとしていますJPanelsが、追加された最初のパネルから消えてしまいます。

では、Swing コンポーネントを複数のコンテナーに追加することはできませんか?

前もって感謝します。