AbsoluteLayoutを使用するJFrameのエッジの周囲に余分なスペースを入れることはできますか? JFrameの下側のコンポーネントとしてボタンがあると、JFrameウィンドウの下端に合わせてボタンが配置されているように見えます。 AbsoluteLayoutを使用しているときに、コンポーネントとJFrameのエッジの間に少し余分なスペースを追加する方法があるかどうかを知りたいと思います。Java:AbsoluteLayoutの余分なスペース
0
A
答えて
0
ボタンの下に追加できる空白スペースを作成するには、Box.createRigidArea(dimensions)を使用できます。
2
提案:あなたはJFrameのにコンポーネントを追加すると
- 、あなたは実際のJFrameのcontentPaneにそれを追加しています。 contentPaneに「バッファ」ボーダーを与えるには、コンポーネントの周りに必要なボーダーの量のint定数であるパラメーターをEmptyBorder(...)に渡すことを検討してください。
- 「絶対」レイアウトを使用するのは避けてください。特に、GUIの下部などのレイアウトマネージャの配置場所にコンポーネントを配置するのは避けてください。たとえば、
、中央と下のJPanelのが原因空の境界線のGUIの端に外出しない方法を次のコードで作成されたGUIでのノートは:
import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.*;
public class ButtonAtBottom {
private static void createAndShowGui() {
JPanel bottomPanel = new JPanel();
bottomPanel.add(new JButton("Bottom Button"));
bottomPanel.setBorder(BorderFactory.createTitledBorder("Bottom Panel"));
JPanel centerPanel = new JPanel();
centerPanel.setBorder(BorderFactory.createTitledBorder("Center Panel"));
JPanel mainPanel = new JPanel(new BorderLayout());
mainPanel.add(centerPanel, BorderLayout.CENTER);
mainPanel.add(bottomPanel, BorderLayout.PAGE_END);
// **** here I add the border to the mainPanel which I'll
// make into the contentPane
int eb = 25;
mainPanel.setBorder(BorderFactory.createEmptyBorder(eb, eb, eb, eb));
// don't set the preferredSize per Kleopatra, but am doing it
// here simply to make code shorter for this sscce
mainPanel.setPreferredSize(new Dimension(500, 400));
JFrame frame = new JFrame("ButtonAtBottom");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setContentPane(mainPanel);
frame.pack();
frame.setLocationByPlatform(true);
frame.setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGui();
}
});
}
}
+1
笑って大声で:-) – kleopatra
0
設定しますコンテンツパネルの空白の境界。ここで、SIZE
は必要なパディングの量です。あなたが各エッジに異なるパディングをしたい場合、あなたはそれに応じて設定することができるように
JFrame frame = new JFrame();
JPanel panel = new JPanel(null);
panel.setBorder(BorderFactory.createEmptyBorder(SIZE,SIZE,SIZE,SIZE);
frame.setContentPane(panel);
//The rest
引数が上、左、下、右パディングのためのものです。
関連する問題
- 1. asp.net mvc razor余分なスペース
- 2. div要素の余分なスペースの解
- 3. SSRSレポートの余分なスペース図
- 4. iOS - TableViewヘッダーの余分なスペース
- 5. jsRender - 各ループ内の余分なスペース
- 6. Gmail/Chromeの余分な行スペースHTMLメール
- 7. 余分なスペースto_sを使って(:ロング)
- 8. フォントを変更した余分なスペース
- 9. 余分なスペースをリストボックスから外す
- 10. ie7 td入力余分な垂直スペース
- 11. LaTeXは積分の隣に余分なスペースを置く
- 12. イメージに余分なスペースがあるのはなぜですか?
- 13. 余分なスペースを持たないDMGの作成
- 14. MathJaxの\ newcommandマクロによる不要な余分なスペース
- 15. SSRSレポート:フィールドがNULLのときのフィールド間の余分なスペース
- 16. xsltの要素の余分なスペースを取り除く方法
- 17. Androidビットマップの上と下の余分なスペース
- 18. strposを使用するときの余分なスペースのポイント
- 19. Aspose、余分なスペースなしでPdfを追加
- 20. スタック割り当て、なぜ余分なスペース?
- 21. BeautifulSoupは予期しない余分なスペースを返します
- 22. xmlの解析に余分なスペースが必要です
- 23. Jqueryスライダの謎に余分なスペースを追加しますか?
- 24. 余分な灰色のスペースが右側にある
- 25. 名前の余分な中スペースを削除する - SQL
- 26. .msiをインストールする際の余分なスペース
- 27. GridViewまたはListViewの下部に余分なスペースを追加
- 28. cppがトークンの間に余分なスペースを挿入する
- 29. Webkitブラウザの余分なスペースはありますか? (ChromeとSafari)
- 30. iframeの下に余分なスペースが作成されます
AbsoluteLayoutは効果的なレイアウトではありません - – kleopatra