Форум программистов, компьютерный форум, киберфорум
Java: GUI, графика
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 8
1

Jframe элементы в левом верхнем углу

12.05.2015, 13:11. Показов 2897. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Подскажите как можно расположить кнопки в левом верхнем углу, что бы они не занимали все окно и были фиксированного размера, должен получиться квадрат 10 на 10 кнопок.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import javax.swing.JButton;
import javax.swing.JFrame;
 
public class HereWeStart {
    public static void main(String[] arg) {
        JFrame fr = new JFrame();
        JButton[] b = new JButton[100];
        fr.setSize(800, 600);
        /*fr.setLayout(manager);*/ // тут подскажите какой лучше использовать
        fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        // добавляет кнопки на наш фрейм
        int n = 0;
        for (int i = 0; i < 10; i++) {
            for (int j = 0; j < 10; j++) {
                b[n] = new JButton(String.valueOf(n));
                fr.add(b[n]);
                n++;
            }
        }
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.05.2015, 13:11
Ответы с готовыми решениями:

JDialog и иконка в верхнем левом углу окошка
Есть ли способ задать иконку в верхнем левом углу окна диалога. public class xxDialog extends...

Как в SWT удалить 3 стандартные кнопки в верхнем правом углу?
Дело в том, что мне нужно сделать RAP-приложение, оно представляет собой swt-окно (Shell) в...

Проходил ли кто-то видео-курс techpro? Как у них получилось JFrame в JFrame добавить
Проходил ли кто-то видео-курс techpro? Как у них получилось JFrame в JFrame добавить? ...

Как закрыть один JFrame и открыть новый JFrame?
привет подскажите как реализовать. есть отдельный класс с выпадающим меню(там три пункта). есть...

8
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
13.05.2015, 08:38 2
Цитата Сообщение от Darkliself Посмотреть сообщение
квадрат 10 на 10 кнопок.
GridLayout
0
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 8
13.05.2015, 08:41  [ТС] 3
пробовал GridLayout он растягивает кнопки по всему окну, а нужно что бы только в левом верхнем углы были кнопки
0
2883 / 2295 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
13.05.2015, 10:32 4
Лучший ответ Сообщение было отмечено Darkliself как решение

Решение

намекаю
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public class HereWeStart {
    public static void main(String[] arg) {
        JFrame fr = new JFrame();
        JButton[] b = new JButton[100];
        fr.setSize(800, 600);
        fr.setLayout(null);
 
        JPanel panel = new JPanel(new GridLayout(10, 10));
        fr.add(panel);
        panel.setLocation(100, 50);
        panel.setSize(500, 300);
 
        fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        fr.setVisible(true);
 
        // добавляет кнопки на наш фрейм
        int n = 0;
        for (int i = 0; i < 10; i++) {
            for (int j = 0; j < 10; j++) {
                b[n] = new JButton(String.valueOf(n));
                panel.add(b[n]);
                n++;
            }
        }
    }
}
1
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 8
13.05.2015, 11:12  [ТС] 5
Огромное спасибо!
0
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
14.05.2015, 15:38 6
Цитата Сообщение от Паблито Посмотреть сообщение
Java
1
fr.setLayout(null);
Это 146% говнокод.

Цитата Сообщение от Darkliself Посмотреть сообщение
а нужно что бы только в левом верхнем углы были кнопки
Панельку с GridLayout положить в контейнер с GridBagLayout.
0
2883 / 2295 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
14.05.2015, 15:41 7
Цитата Сообщение от aleksandy Посмотреть сообщение
Это 146% говнокод.
убейся https://docs.oracle.com/javase... /none.html

в примере лаяут окна я сделал null просто что бы быстро "отодвинуть" дочернюю панель,
так однозначно видно что кнопки не просто идут с левого верхнего угла, а находятся в JPanel, то есть помещены в контейнер с gridlayout-ом
0
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
15.05.2015, 05:45 8
Цитата Сообщение от Паблито Посмотреть сообщение
убейся
Взаимно.

Первый же абзац.
Although it is possible to do without a layout manager, you should use a layout manager if at all possible. A layout manager makes it easier to adjust to look-and-feel-dependent component appearances, to different font sizes, to a container's changing size, and to different locales. Layout managers also can be reused easily by other containers, as well as other programs.
0
2883 / 2295 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
15.05.2015, 08:21 9
я этот абзац читал много раз и прекрасно понимаю что там написано, но вопрос тса был вообще не об этом, а про gridlayout, на который я ответил
на спор можно приколупаться и притянуть за уши любой код на этом форуме
0
15.05.2015, 08:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.05.2015, 08:21
Помогаю со студенческими работами здесь

Как сделать Jframe внутри другого JFrame
Доброго времени суток джентльмены и леди. Как сделать так, что бы внутри главного JFrame запустить...

ConstrainLayout - при запуске все элементы оказываются в левом верхнем углу
Возникла проблема с использованием Constraint Layout. Изначально использовал Relative Layout. Потом...

Выяснить, имеются ли четные числа в верхнем левом или в нижнем левом углу
Доброго) Дан двухмерный массив целых чисел. Выяснить, имеются ли четные числа в верхнем левом или...

Переставляя элементы матрицы добиться, чтобы ее максимальный элемент находился в левом верхнем углу
Путем перестановки элементов квадратной вещественной матрицы добиться того, чтобы ее максимальный...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru