導航:首頁 > 編程語言 > 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設置按鈕的位置相關的資料

熱點內容
英文蝦皮app怎麼登錄 瀏覽:432
同花順app怎麼確定盤中個股買入點 瀏覽:867
程序員摸底考試考什麼 瀏覽:525
如果編譯器是中文 瀏覽:515
程序員升職怎麼談 瀏覽:109
android機頂盒ui 瀏覽:359
tb編譯器 瀏覽:728
怎麼壓縮圖片和視頻在一起 瀏覽:563
gcc編譯win 瀏覽:229
單片機定時器t1初值怎麼算 瀏覽:642
android保存聯系人 瀏覽:196
菜雞app里的聯機游戲怎麼聯機 瀏覽:263
文件伺服器怎麼做許可權控制 瀏覽:952
壓縮機電機軸承 瀏覽:973
lol台服對戰伺服器延遲高怎麼辦 瀏覽:301
java路徑斜杠 瀏覽:381
java問號泛型 瀏覽:150
手動添加編譯參數 瀏覽:462
java圖像編程實例庫 瀏覽:163
java程序員2017 瀏覽:903