簡體   English   中英

在 Swing 上更改 JTextField 高度

[英]Change JTextField height on Swing

我正在嘗試修復“amountField”文本字段的高度,但我不能。

我希望 amountField 的高度與其上方的 JComboBox 高度相同,這樣看起來更好。

現在,與其他設計相比,JTextField 看起來非常高。

我已經嘗試了我在這個論壇上讀到的所有內容,但似乎沒有任何效果。

我不知道它是否相關,但是整個 JPanel (WithdrawalScreen) 位於另一個帶有 BorderLayout 的 JPanel 內。 這個面板是它的中心部分

謝謝

圖片在這里

public class WithdrawalScreen extends JPanel {

    Public JPanel init() {

        this.setLayout(new GridLayout(0,1));

        account = new JLabel("account");
        accountSelect = new JComboBox(labels);
        amount = new JLabel("amount");
        amountField = new JTextField("");
        submit = new JButton("SUBMIT");

        this.add(account);
        this.add(accountSelect);
        this.add(amount);
        this.add(amountField);
        this.add(submit);


        return this;
    }

} 


嘗試創建 5 行 1 列的網格布局。 我認為高度搞砸了,因為您沒有正確設置構造函數參數。

 new GridLayout(5,1);

網格布局將拉伸組件並為其所有組件提供相同的大小。 為了使每個組件的“默認”的大小,你可以使用BoxLayoutBoxLayout.Y_AXIS在其構造函數的參數。 另一種方法是使用具有其他布局的虛擬嵌套 JPanel。 讓我們說 FlowLayout。

JTextField textField = new JTextField(10);
JPanel nestedPanel = new JPanel(new FlowLayout());
nestedPanel.add(textField);
gridLayoutPanel.add(nestedPanel);

JTextField不會被拉伸。 nestedPanel將是。 自己做一些實驗,你會找到適合你需求的方法。

一個可以幫助您的鏈接: 布局管理器的視覺指南。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM