Я хочу поместить некоторые кнопки в JPanel
в случайные позиции (x, y), и эти классы макета раздражают.Поместите компоненты в произвольные координаты (x, y)
Возможно ли это в Swing?
Я хочу поместить некоторые кнопки в JPanel
в случайные позиции (x, y), и эти классы макета раздражают.Поместите компоненты в произвольные координаты (x, y)
Возможно ли это в Swing?
Вы можете установить координаты, если вы используете нулевой макет:
panel.setLayout(null);
Button b = new Button(....);
panel.add(b);
b.setSize(width, height);
b.setLocation(x,y);
Но настоятельно рекомендуется использовать макеты. Классы макетов не «раздражают», они ваш друг, если вы их правильно понимаете.
Я предлагаю прочитать tutorial about GridBagLayout, это легко понять (kinda html tables) и очень мощный.
использование null
как "Layout Manager":
http://docs.oracle.com/javase/tutorial/uiswing/layout/none.html
Лучше узнать о разных [Менеджерах макетов] (http://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html). – trashgod
Нет, вы определенно не хотите, чтобы какой-либо макет разворачивался вручную. И нет, нет ничего раздражающего в layoutManager - за исключением того, что вы считаете, что обучение раздражает само по себе ;-) – kleopatra
Почему все вторгаются в op? возможно, ему просто нужен полный контроль над позициями кнопок (например, в какой-то игре, где они перемещаются, и пользователь должен ударить их). – fortran