Я делаю RPG, чтобы практиковать мои новички. Я хочу создать набор параметров для создания персонажа в сетке 1x4 с кнопкой подтверждения внизу.Остановить JTextField Java от расширения до панели?
Моя проблема заключается в том, что я хочу, чтобы JTextField переставал выглядеть так, как будто он был предназначен для потребления любого текста, который может иметь мир. Смотрите здесь:
[Хорошо, хорошо, я не могу добавлять изображения еще.]
Но это гигантский текстовое поле, которое я считаю, это его путь, чтобы пытаться заполнить всю панель. Я просто хочу, чтобы он был примерно такой же высоты, как и JLabel рядом с ним.
Я пробовал setBounds(), setSize(), setPreferredSize() ... как я могу сделать это текстовое поле соответствующим размером?
Редактировать: Извините за не размещение соответствующего кода:
package practice;
import java.awt.GridLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
JFrame failFrame = new JFrame();
JPanel failPanel = new JPanel();
failPanel.setLayout(new GridLayout(0, 4));
failPanel.add(new JTextField());
failPanel.add(new JPanel());
failPanel.add(new JTextField());
failPanel.add(new JPanel());
failFrame.add(failPanel);
failFrame.setSize(800, 800);
failFrame.setLocationRelativeTo(null);
failFrame.setVisible(true);
}
}
Это приводит к тому, текстовые поля, чтобы быть намного выше, чем я хочу, чтобы они были. Можно ли использовать gridLayout и снизить их высоту?
Post ... ваш ... код. Swing использует компоновщиков для компоновки компонентов. Способ поведения texfield зависит от используемого менеджера компоновки и того, как он используется. Методы setXxxx, которые вы пытались, почти никогда не должны использоваться. –
Извините, код завершен. –
Пожалуйста, отредактируйте свой вопрос, чтобы включить [sscce] (http://sscce.org/), который показывает, что вы пробовали. – trashgod