Форум программистов, компьютерный форум, киберфорум
Java: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 13.07.2016
Сообщений: 9

GridBagConstraints

21.08.2016, 13:52. Показов 502. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Искал решение проблемы, не нашел( Программа как я понял компилируется и перед запуском выдает ошибку.
Вот весь код:
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import javax.swing.*;
import java.awt.*;
 
public class qwerty {
    public static void main(String[] args) {
 
        JFrame mainF = new JFrame("Авторизация в всистеме");
        mainF.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        mainF.setSize(400, 200);
        mainF.setLocationRelativeTo(null);
 
//создал лояут
        GridBagLayout mainLay = new GridBagLayout();
 
//создал панель
        JPanel mainPanel = new JPanel();
 
//присваиваю панели лояут
        mainPanel.setLayout(mainLay);
 
//создаем лейбелы
        JLabel loginLa = new JLabel("Введите логин:");
 
        GridBagConstraints loginLaGBC = new GridBagConstraints();
 
        loginLaGBC.gridx = 0;
        loginLaGBC.gridy = 0;
        loginLaGBC.gridwidth = 0;
        loginLaGBC.gridheight = 1;
        loginLaGBC.weightx = 0;
        loginLaGBC.weighty = 1;
        loginLaGBC.anchor = GridBagConstraints.NORTH;
        loginLaGBC.fill = GridBagConstraints.HORIZONTAL;
        loginLaGBC.insets = new Insets(2,2,2,2);
        loginLaGBC.ipadx = 0;
        loginLaGBC.ipady = 0;
 
        mainF.add(loginLa, loginLaGBC);
 
        mainF.setLayout(mainLay);
 
        mainF.setVisible(true);
 
    }
}
Вот ошибки:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
"C:\Program Files (x86)\Java\jdk1.8.0_101\bin\java" -Didea.launcher.port=7537 "-Didea.launcher.bin.path=C:\Program Files (x86)\JetBrains\IntelliJ IDEA 2016.2\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\charsets.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\deploy.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\ext\access-bridge-32.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\ext\cldrdata.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\ext\dnsns.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\ext\jaccess.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\ext\jfxrt.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\ext\localedata.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\ext\nashorn.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\ext\sunec.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\ext\sunjce_provider.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\ext\sunmscapi.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\ext\sunpkcs11.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\ext\zipfs.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\javaws.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\jce.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\jfr.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\jfxswt.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\jsse.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\management-agent.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\plugin.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\resources.jar;C:\Program Files (x86)\Java\jdk1.8.0_101\jre\lib\rt.jar;C:\Usersергей\IdeaProjects\one\out\production\one;C:\Program Files (x86)\JetBrains\IntelliJ IDEA 2016.2\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain qwerty
Exception in thread "main" java.lang.IllegalArgumentException: cannot add to layout: constraint must be a string (or null)
    at java.awt.BorderLayout.addLayoutComponent(BorderLayout.java:426)
    at javax.swing.JRootPane$1.addLayoutComponent(JRootPane.java:532)
    at java.awt.Container.addImpl(Container.java:1127)
    at java.awt.Container.add(Container.java:1005)
    at javax.swing.JFrame.addImpl(JFrame.java:567)
    at java.awt.Container.add(Container.java:973)
    at qwerty.main(qwerty.java:38)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
 
Process finished with exit code 1
Пробовал убирать loginLaGBC из строчки mainF.add(loginLa, loginLaGBC); тогда программа запускается.

Пробовал как в Intellij IDEA и NetBeans.

Добавлено через 22 минуты
Решил проблемы сделав так:
mainLay.setConstraints(loginLa, loginLaGBC);
mainF.add(loginLa);

Добавлено через 29 минут
Другая теперь проблема
Java
1
2
3
4
5
6
7
8
9
10
11
loginLaGBC.gridx = 0;
        loginLaGBC.gridy = 0;
        loginLaGBC.gridwidth = 0;
        loginLaGBC.gridheight = 1;
        loginLaGBC.weightx = 0;
        loginLaGBC.weighty = 1;
        loginLaGBC.anchor = GridBagConstraints.NORTH;
        loginLaGBC.fill = GridBagConstraints.HORIZONTAL;
        loginLaGBC.insets = new Insets(2,2,2,2);
        loginLaGBC.ipadx = 0;
        loginLaGBC.ipady = 0;
При изменении параметров практически ничего не меняется, допустим я не могу привязать к правой стороне формы
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru