問題タブ [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 投票する
3 に答える
973 参照

java - JPanelの画像とコンポーネント

JPanelに画像を表示したいのですが、JPanelにJSliderやJRadioButtonなどのコンポーネントも表示したいと思います。ご覧のとおり、JPanelからクラスを派生させ、メソッドpaintComponentをオーバーライドしました。これは、JPanelに画像を表示するための良い方法です。

しかし、私にはいくつかの問題があります。JSlider、JRadioButton、または別のJPanelなどのコンポーネントをImagePanelに追加すると、このコンポーネントの背景はデフォルトのままであり、背景画像ではありません。この画像をこのコンポーネントの背景として設定する方法がわかりません。案内してください。

よろしく

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

java - コンポーネントからのJLabelアイコンの変更

したがって、一致する背景色とアイコンがランダムに割り当てられたJLabelのグリッドがあります(バブルブレーカーゲームのバブル)。findComponentAt(getX()、getY())を使用してコンポーネントをクリックすると問題が発生します。 ....これは、クリックしたラベルを見つけて、そのICONを別のICONに変更したいためですが、コンポーネントAPIにはsetIcon()メソッドがないようです。変更方法に関する提案はありませんか?アイコン?

1つのファイルのコードを以下に示しますが、まだ明らかに開発中であるため、面倒です。申し訳ありません。

コードが奇妙に貼り付けられています..:

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

java - クラス JLabel を拡張してプロパティのドラッグを追加する際の問題

クラス javax.swing.JLabel を拡張するクラス JLabelExtended があります。マウスを使ってドラッグするプロパティを追加したいので、拡張します。これが私のコードです:

}

これは、ラベルをドラッグした後のコンソール部分です:

いくつか質問があります:

  1. なぜ e.getY() は否定的な結果になるのですか?

  2. ラベルをドラッグすると、ラベルの近くにドラッグするラベルのコピーが表示されます。どうすれば修正できますか?

  3. ラベルをドラッグすると、ドラッグが非常に遅くなります。たとえば、カーソルを 10 ポイント上に移動すると、ラベルは 5 ポイント上でしか移動しません。どうすれば修正できますか?

前もって感謝します

JLabel を拡張する別の方法を次に示します。

public class LabelEasy extends JLabel { private MouseAdapter moveMouseAdapter; プライベート MouseMotionAdapter mouseMotionAdapter;

}

ただし、以前のバリアントと同様に機能します。

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

java - JFrameのJPanelのコンポーネント

独自のコンポーネントを作成し、「hi」という名前を付けてJPanelに入れ、そのJPanelをJFrameに入れましたが、何も表示されません。JPanelがJFrame上にあるかどうかを確認するために、JPanelの周囲に境界線を作成しました。確かに、そこにありますが、コンポーネント(ちなみに円弧を描く)はJPanel上にありません。

それは私がメインに持っているものであり、それは基本的に私のテストクラスで唯一のものです。testComponent()には、描画するpaintComponent()があります。

およびコンポーネント

JButton、JTextFieldなどのようなものに注意してください。これらはJPanelでダンディに機能します

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

java - JAppletはブラウザでJComponentを起動せず、Eclipseで動作します

暇なときにJavaでゲームのプロトタイプをコーディングしました。このゲームは私の教育目的のためだけのものでした。Web上のJNLP起動ファイル、およびJFrameを介したメインマシンを介して正常に動作しています。

私の主な目的は、JAppletを使用して、このプロトタイプをWebブラウザで再生できるようにすることです。AppletPlayer.javaというクラスをコーディングしました。このクラスの目的は、基本的に私のゲームのメインクラスのランチャーとして機能することです。AppletPlayer.javaファイルはほとんど次のとおりです。

現在、Gameクラス自体がJComponentを拡張し、Runnable、KeyListener、およびFocusListenerを実装しています。Eclipseを介してAppletPlayerを起動すると、アプレットビューアの魅力のように機能します。ただし、Webにデプロイすると、次の2つのことがわかります。

  1. Windows XPマシンでは、アプレットがロードされ、メインタイトル画面に留まり、フォーカスを受け取らないため、ユーザー入力の種類を登録することはありません。
  2. Windows 7マシンでは、アプレットがロードされ、ゲームの音楽が聞こえますが、アプレットの画面自体は、真っ白なボックスだけをレンダリングします。

これらの問題は、IEとFirefoxの両方で発生します。

私はしばらくの間GoogleとStackOverFlowを熟読していて、解決策を掘り下げようとしていますが、運がありませんでした。私はアプレットに少し慣れておらず、正しい方向への微調整を望んでいました。

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

java - Java: 静的なサイズ設定と配置を使用して JComponents を JPanel に追加する

サードパーティのライブラリを使用せずに、Java アプリケーションで SVG ファイルを読み込んで描画するプログラムがあります。グラフィックス オブジェクトに形状を描画することでファイルを複製できるようになりましたが、各オブジェクトにリスナーを適用して各要素 (Rect/Circle/Line など) を選択可能にしたいと考えています。

そのためには、JComponent を拡張し、コンポーネント内にオブジェクトを描画し、表示される要素ごとにリスナーを追加するクラスを作成する必要があるという印象を受けました。したがって、それぞれがファイル内の特定の要素に対応する、リスナーが添付されたコンテナコンポーネントのグループ(それらを呼び出すことができる場合)があります。

次に、これらのコンポーネントを JPanel または適切なコンテナーに描画する必要がありますが、そのためには null レイアウトを使用し、JPanel/Container 内の各コンポーネントの位置とサイズを手動で設定する必要があります。

結論として、これはまさに私がやりたいことですが、認識していないグラフィックオブジェクトにリスナーを追加するためのより標準化されたアプローチがあるかどうか疑問に思っていますか?

上記のアプローチを使用して拡張しようとしている問題のコードのサンプルを次に示します。かなり単純化したので、それでも意味があることを願っています

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

java - コントロールに表示されるトレイを実装するにはどうすればよいですか?

次のような画面があります。

そして、ボタンAをクリックすると、描画しているJComponentの上にトレイがポップアップするようにしたいと思いますか? これをどのように実装するのが最善ですか?レイアウト マネージャーを無視して、キャンバスまたは何らかの階層化されたペインとして使用している JComponent に追加することでしょうか。

JPopupMenu と提案されたトレイを区別するため。

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

java - Javaでのビジュアルコンポーネント構築中のフォーカスの防止

プログラムの実行中に画像を数回リロードする必要があるアプリケーションを作成しました。おそらくそれは不器用ですが、私の実装は、サブクラスのComponentクラスを拡張し、そのコンストラクターへのfileName引数を介してイメージを再ロードすることでした。コードは以下に含まれています:

とにかく、私の問題は、displayコマンドを呼び出すたびに、このウィンドウがEclipseを含むすべてのJavaのフォーカスを奪うことです。これは、実際に悪化する可能性があります。コンストラクターを追加しようとしsetFocusable(false)ましたが、それでもフォーカスを奪うことができます。焦点を合わせることができるが、建設時に自動的に焦点を合わせないようにするにはどうすればよいですか?

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

java - カスタム JComponent の表示に関する問題

やあみんな、もっとシンプルであるべきだと思われるものに問題があります。シンプルなカスタム JComponent が表示されません。私は選択的に絶対配置を使用していますが、それが問題の原因になっている可能性があるかどうかはわかりません。アドバイスや >解決策< をいただければ幸いです。ありがとう!

(私のコードはこちら)

これが単純な JComponent クラスです

基本的に、私の問題は、JFrame 内に何も表示されないことです... :/ ヘルプ!

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

java - 複数のJOptionPaneダイアログを持つことは可能ですか?

別のJOptionPaneダイアログの上にJOptionPaneダイアログを配置する方法を知っている人はいますか?