問題タブ [grouplayout]
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 - NetBeans での GroupLayout 自動生成コード
Java プログラミングに 4 年近く携わった後、自分で GUI クラスの書き方を学ぶことにしました。これまでずっと NetBeans GUI エディタを使用してきたからです (特に誇りに思っているわけではありませんが、かなりうまく機能しているので、コンポーネントについて心配する必要はありません)。レイアウト)。
問題は、 How to Use GroupLayoutチュートリアルに従って、非常に強力なこのレイアウト マネージャーについて学習していることです。今、私は自分で小さな例を作成し、Netbeans GUI エディターで同じことを試みましたが、両方のコードにいくつかの違いがあることがわかりました。何か不足しているのか、NetBeans が GroupLayout 定義に役に立たないコードを追加しているだけなのかを知りたいです。 .
これが私の目標です:
これは私のSSCCEです:
ご覧のとおり、並列グループを水平グループとして定義し、順次グループを垂直グループとして定義しただけです。しかし、Netbeans は次のコードを自動生成します。
ご覧のとおり、グループ構造は私のものより少し複雑です。私が間違っているのか、それとも Netbeans が必要以上のグループを不必要に追加しているのかを知りたいだけです。
java - コンテナへの Swing レイアウトの依存関係
GroupLayout はコンストラクターへの引数として Container を必要とするのに、BorderLayout は必要としないのはなぜですか?
Container オブジェクトが追加する情報と、BorderLayout がその情報を必要としない理由がわかりません。
java - 動的に作成された Jlabel のアライメント
jlabels と jtextfields を動的に作成し、ユーザーがデータベースのテーブルにデータを挿入できる jPanel に追加しようとしています。
データベースからすべてのテーブル属性の名前を取得し、これらの名前ごとに jlabel と jtext を作成する必要があります。その結果は次のようになります (ラベル 5 は、jpanel の下部にスペースがない場合にのみ作成されます)。
GroupLayout と SequentialGroup を使用しようとしましたが、同様のことはできませんでした。私はそれを理解して解決できないという完全に厄介なことを達成しました。
最初の画像のように、「ESTADO」というラベルが「SIGLA」ラベルの下にあり、「inserting table is:」テキストのラベルが画面の左側にある必要があります。
私のコードは次のとおりです。
編集:
#rcook が言ったことを使用して、グループを変更し、目的のものを作成することができました。これが私が作成したコードです:
それが最善の解決策かどうかはわかりませんが、うまくいきます。
java - Java - 水平グループに関連付けられていません
grouplayout を使用して JPanel を作成しようとしていますが、それでも同じエラーが発生します。水平グループには属していません。プログラムを実行すると、okButton になることがあり、次に openButton になり、次回はラジオボタンの 1 つになります。私もコードを変更しませんでした。私はドキュメントを読み、ParallelGroup
水平グループのそれぞれに垂直グループが必要であり、SequentialGroup
その逆も同様であることを理解しています。
コード:
エラー:
助けてくれてありがとう :)
java - Grouplayout で複数の JPanel を使用する方法
JPanel
フレームに複数の s を追加して、それぞれに a を使用させようとしていますGroupLayout
が、何らかの理由で取得するNullPointerException
かException
、スレッドのメインで使用します。何が間違っている可能性があり、どうすれば修正できますか?
次にglayout2 = new GroupLayout(temp2Panel); temp2Panel.setLayout(glayout2); glayout2.setAutoCreateGaps(true); glayout2.setAutoCreateContainerGaps(true);
、grouplayout を使用して 2 番目のパネルを作成し、同じフレームに表示しますか?
編集3:これは私が得るものです:
編集4:
java - Java GroupLayout の実装
ボタンを含む JScrollPane があります。このようなボタンのグループが 2 つ必要です。
このレイアウトを実装するにはどうすればよいですか?私は Java.swing の初心者です。
java - 実行時のパネルの変更とサイズ変更
クラスPanelTrialがJPanelを拡張し、GroupLayoutを実装しています。その中に、JTabbedPane、つまり jTabbedPane が左側にあり、別の JPanel、つまり rightPanel が右側にあります。rightPanel では、実行時に 2 つのパネル (つまり、compoPanel、btnsPanel) を交互に読み込みます。
私の問題:compoPanel、btnsPanelの幅が異なります(そして、私はそれを変えたいです)。最初に compoPanel (W の方が大きい) が rightPanel に読み込まれます。私が探しているのは、btnsPanel を rightPanel にロードするときに、jTabbedPane のサイズを増やしてすべての空き領域を占有することです。jTabbedPane と rightPanel の PreferredSize を更新すると、それらのサイズも変更されます。しかし、rightPanel の位置が右端に移動しません。これにより、jTabbedPane の中央になります。
私が使用するコードは次のとおりです。
誰でもこの問題を解決するのを手伝ってもらえますか - ここで立ち往生しています。btnsPanel が右端に表示される方法がわかりません。invalidate() を呼び出してみましたが、それも役に立ちませんでした。
どんな助けでも大歓迎です。
ありがとう