導航:首頁 > 編程語言 > java設置按鈕的位置

java設置按鈕的位置

發布時間:2024-10-18 13:52:10

java中如果適用了布局管理器,還能再設置按鈕等組件的大小和位置了嗎

有布局管理器的情況下,設置組件位置大小是不起作用的。可以用如下代碼設置布局管理器為空。
把JFrame設置個BorderLayout,把JPanel放在North里,JPanel就會自動調整大小了。至於JPanel里的布局,不知你出於什麼特殊理由,單純需要重疊的話應該有合適的布局管理器。

另外還有個思路,改變一下你的設計方法,可能就有更簡單的方案。實際上很多設計中的需求以前就有很多人遇到了並且作出了好的方案,甚至已經是標准做法,所以多學習參考一下。

Ⅱ java怎樣放兩個按鈕在窗體的正中間

JPanel 放入到BorderLayout.CENTER , 那麼會自動填充滿整個contentPane的中間, 而JPanel內部還是流式布局, 一行排滿 自動換到下一行,從上到下. 所以按鈕還是在最上面.

(把JPanel的背景色改成藍色,就可以清晰的看到JPanel填滿了窗口)

importjavax.swing.*;

{
publicJFDemo2(){

JPanelpane=newJPanel();
BoxLayoutlayout=newBoxLayout(pane,BoxLayout.X_AXIS);//水平的盒布局
pane.setLayout(layout);

JButtonmessageButton=newJButton("OK");
JButtoncloseButton=newJButton("Cancel");
pane.add(Box.createGlue());//擠佔ok按鈕和窗口左側空間
pane.add(messageButton);
pane.add(Box.createHorizontalStrut(20));//按鈕之間的水平距離
pane.add(closeButton);
pane.add(Box.createGlue());//擠佔cancel按鈕和窗口右側空間

add(pane);
setTitle("Demo");//標題
setSize(320,230);//窗口大小
setLocationRelativeTo(null);//窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//窗口點擊關閉時,退出程序
}
publicstaticvoidmain(String[]args){
newJFDemo2().setVisible(true);
}
}

總結: 推薦使用方法二,使用盒布局來實現.

一般不推薦使用絕對布局/空布局 來布局窗口, 因為不同的操作系統下顯示的效果不完全一致.

並且還需要寫大量的代碼來計算組件的大小和位置, 當窗口放大和縮小時 還需要重新計算位置

Ⅲ Java中如何給JButton/JLabel定位置【高分懸賞】

必須容器用 null 布局
然後控制項 setBounds
bounds 包含的參數是位置(x,y)和大小(w,h)
這個 bounds 本來是布局管理器去控制計算的
既然 null 布局,不用管理器
只有自己去設置

只 setLocation 的話,只有位置,沒有大小——大小默認為 (0,0),所以不行

Ⅳ java swing怎麼控制按鈕的位置啊

你可以將容器的整體布局設置為FlowLayout,然後在FlowLayout中添加一個Box布局,Box再添加3個部分,分別是表格、標簽和按鈕,兩個按鈕可以在用一個再新建一個Box對象並添加進去,下面是代碼:

import javax.swing.*;
import java.awt.*;
public class test extends JFrame{
public test()
{
setSize(300,200);
setLocationRelativeTo(null); //使窗體居中顯示
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
setTitle("用戶信息");

String str[] = {"屬性","信息"};
Object str2[][]={{"姓名",""},{"職工號",""},{"身份證號",""},{"性別",""},{"出生年月",""}};
JTable table = new JTable(str2,str);
JButton Button1 = new JButton("修改信息");
JButton Button2 = new JButton("修改密碼");
JLabel Label = new JLabel("用戶:",JLabel.CENTER);
JScrollPane scrollpane = new JScrollPane(table);

Box box = Box.createVerticalBox();
Box buttonBox = Box.createHorizontalBox();

buttonBox.add(Button1);
buttonBox.add(Button2);

box.add(table);
box.add(Label);
box.add(buttonBox);

add(box);
}
public static void main(String []args)
{
test Test = new test();
Test.setVisible(true);
}
}

閱讀全文

與java設置按鈕的位置相關的資料

熱點內容
python數據轉換列表類型 瀏覽:717
解壓後的文件怎麼解開 瀏覽:175
四川補貼認證下載什麼app 瀏覽:858
android設計風格 瀏覽:426
視頻不支持我的加密 瀏覽:342
布包pdf 瀏覽:267
程序員錄制課程表 瀏覽:626
eclipsephp斷點調試 瀏覽:895
虛擬成交量指標源碼 瀏覽:838
什麼APP有背單詞小組 瀏覽:43
蘋果2g視頻怎麼加密 瀏覽:204
人工智慧程序員和古典錄音師相遇 瀏覽:415
國產伺服器是怎麼來的 瀏覽:116
蓄勢待發源碼 瀏覽:458
伺服器如何清理log文件 瀏覽:835
javaawtfont 瀏覽:627
php企業站後台 瀏覽:417
日企程序員招聘 瀏覽:113
伺服器中毒網頁投放廣告怎麼辦 瀏覽:709
安卓快閃記憶體掉速是什麼原因 瀏覽:409