問題タブ [jlayeredpane]
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.
java - Java スイング jLayeredPane
マウスクリックでjLayeredpaneのクリックされた場所にjbuttonを追加するコードがあります。今問題はサイズ変更にあります。実行時にjLayeredpaneのサイズを変更しない場合、問題はありません。ウィンドウを最大化して作成すると、jLayeredpane が画面に合わせて調整されるため、jpane にボタンを追加すると、ウィンドウのサイズが縮小され、追加したボタンが範囲外になるので、表示されません。これに対する解決策はありますか?
java - JLayeredPane:奥行きと位置の機能的な違いは何ですか?
私は学校のJavaプロジェクトでConnectFourゲームに取り組んでいます。JLayeredPaneの「方法」があり、期待どおりに機能していますが、特定の概念の背後にある「理由」がよくわかりません。
これが私の理解です:
JLayeredPaneは、JPanelに似たコンテナであり、各コンポーネントの深さと位置を指定できます。深さは整数で、0が最下層、n-1が最上層で、nはコンポーネントの数です。Positionはint(1つはIntegerラッパークラスを使用し、もう1つは単なるプリミティブです!)であり、レイヤー内のコンポーネントの位置を指定します。0は最上位レイヤー、-1は最下位レイヤー、正のintはの間に、数値が小さいほど位置が高くなります。したがって、1つのレイヤーの4つのコンポーネントを、最上部から最下部の0、1、2、-1の位置に並べることができます。
私の質問は、両方の概念を持つ必要があるのは何ですか?
たとえば、画像を使用して3つのJLabelを作成しました。frontBoard、backBoard、およびpieceです。ピースは、frontBoardの前に配置されることもあれば、frontBoardとbackBoardの間に配置されることもあります。2番目の例を見てみましょう。
私はこれらの手段のいずれかを通して同じ効果を得ることができます:
1)バックボードをレイヤー0、位置0に設定できます。レイヤー1、位置0へのピース。フロントボードをレイヤー2、位置0に
2)backBoardをレイヤー0、位置-1に設定できます。レイヤー0、位置1へのピース。そしてfrontBoardをレイヤー0、位置0に
私はこれらの両方の方法をテストしましたが、2つの方法の機能的な違いを見つけることができません。
誰かが私のためにこの謎に光を当てることができますか?
java - JButtonをオーバーラップさせる
JavaSwingで仮想ピアノタイプのプログラムを作成しています。現在のピアノキーの私の領域は、白いキーとして白いJButtonを含む水平のBoxLayoutを持つJPanelです。黒のキーも追加して、白のキーと重ねてもらいたいです。
私が試した2つの異なるアプローチがあります。1つはOverlayLayoutを使用しています。残念ながら、OverlayLayoutマネージャのオンラインドキュメントはあまりなく、NetBeansGUIビルダーでは利用できません。私はそれを機能させる方法の手がかりを持っていません。私が試した2番目のことは、JLayeredPanesを使用することです。Netbeansでそれをいじった後でも、私はそれを理解できないようです。
ですから、私の質問は非常に単純だと思います。他のJButtonの上にJButtonを追加するための最良のアプローチは、もしあれば、何ですか?それとも、ピアノの鍵盤にJButtonを使用する代わりの方法がありますか?
編集
aioobeとdacweのコードを組み合わせて、希望する結果を得ました。私は基本的に、aioobeの基本的な寸法(少し拡大)とmod7の部分を使用したdacweのz-orderingを使用しました。また、物事をより明確にするためにいくつかの変数を追加しました。これは私が今持っているものです。
みんなありがとう!次に、リスナーとテキストをこれらのボタンに何らかの方法で添付する必要があります。
java - JLayeredPaneで背景色を設定するにはどうすればよいですか?
JLayeredPaneでsetBackground(Color)を呼び出しても、実際には背景色が設定されていないように見えるのはなぜですか。JLayeredPaneが何らかの理由で透明な背景を持っている必要があることと関係があると思いますか?とにかく、ここに問題を示すいくつかのコードがあります。これはMac上にあるので、OSXLAFを使用していると思います。これが生成する結果は、この画像で示されています。
java - Swing: 透明なパネルを別のパネルの上に重ねて表示
テキストを表示する textArea を表示し (ログ行を表示します)、その上にアニメーション GIF を表示したいと考えています。こちらで説明されている解決策を試しましたが、灰色の画面しか表示されません。ヒント?
java - JDesktopPane と JInternalFrame が役に立ちます!
ご挨拶、
重複する JInternalFrames を JDesktopPane に制限することに関して質問があります。基本的に、インスタンス JInternalFrame を JDesktopPane に追加することは包括的です。ただし、JDesktopPane で同じインスタンスの重複する JInternalFrame を制限し、そのインスタンスを JDesktopPane の最上層にします。
どうすればこれを実装できますか? すべてのインスタンスを ArrayList に格納し、実行に関するインスタンスが既に開かれているかどうかを確認しますか?
返信ありがとうございます。
ありがとう、シリル H.
java - JLayeredPane を順番に JButton で埋めるには、どのレイアウトを使用すればよいですか?
JLayeredPane右マージンに達したときに次の行から開始し、ボックス全体をボタンで埋めるように、順番に入力したいと思います。POS 画面をデザインしたいのですが、手動でボタンを配置するのは難しいです。
java - Java : JLayeredPane のサイズ変更の問題
JavaでプログラムGUIを書いています。JFrame の ContentPane として JLayeredPane を使用したいと考えています。私の JLayeredPane には 2 つのレイヤーがあります。1 つのレイヤーは Canvas(canvas1) で、もう 1 つのレイヤーは JPanel(jPanel5) です。Netbeans IDE を使用すると、次のコードが生成されます。
パック();
プログラムを実行すると、奇妙なイベントが発生しました。JFrame のサイズを変更すると、メインの JLayeredPane のサイズは変更されませんでした。コンポーネントにさまざまな背景色を使用しましたが、JLayered のサイズが永続的であることは明らかですが、プロパティで垂直方向と水平方向のサイズを変更できるように設定しました。JFrame はサイズ変更可能ですが、メインの jLayeredPane のサイズは永続的です。
jLayeredPane を JFrame としてサイズ変更するにはどうすればよいですか?!
ありがとうございました

java - 文字列を JLayeredPane に型キャスト
Stringタイプをにタイプキャストする方法はありJLayeredPaneますか? 以下は私が使用しているコードです:
次のエラーが表示されます。