Форум программистов, компьютерный форум, киберфорум
Java: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 Аватар для Alradalion
132 / 126 / 85
Регистрация: 13.09.2013
Сообщений: 485

Использование GridBagLayout

30.06.2015, 17:49. Показов 834. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Пытаюсь разобраться с GridBagLayout. Хотелось бы получить вот такую разметку:

Однако ImagePanel не занимает всю область. Можно ли это как-то исправить?


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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.border.LineBorder;
 
 
public class theoryN extends JFrame{
final JPanel content = new JPanel(new GridBagLayout()); 
JLabel header = new JLabel(new javax.swing.ImageIcon("https://www.cyberforum.ru/images/header.jpg"));
 
static int iOct=0;
JLabel sKey = new JLabel();
ImagePanel sKeyPic = new ImagePanel("https://www.cyberforum.ru/images/Snote_stan.jpg");
NotePaint Note = new NotePaint();
JLabel sKeyInfo = new JLabel("sKeyInfo");
String[] Sskey = {"До", "Ре", "Ми", "Фа", "Соль", "Ля", "Си" };
String[] Ssokt = {"Первая", "Вторая"};
JComboBox Sscb = new JComboBox(Sskey);
JComboBox SsOktcb = new JComboBox(Ssokt);
 
 
public  theoryN(){
super("");
sKey.setFont(Config.font_16);
sKey.setText("Скрипичный ключ");
sKey.setIcon(new javax.swing.ImageIcon("https://www.cyberforum.ru/images/Skey.jpg"));
 
 
content.add(header, new GridBagConstraints(0, 0, 2, 1, 100, 0, GridBagConstraints.FIRST_LINE_START,
            GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
header.setBorder(BorderFactory.createLineBorder(Color.yellow));
 
content.add(sKey, new GridBagConstraints(0, 1, 1, 1, 47, 0, GridBagConstraints.FIRST_LINE_START,
            GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0));
sKey.setBorder(new LineBorder(Color.GREEN, 2));
 
content.add(sKeyPic, new GridBagConstraints(1, 1, 1, 2, 50, 120, GridBagConstraints.NORTH,
            GridBagConstraints.BOTH, new Insets(5, 5, 5, 5), 0, 0));
 sKeyPic.setLayout(new BorderLayout());
 sKeyPic.add(Note);
 
sKeyPic.setBorder(new LineBorder(Color.RED, 4));
 
content.add(sKeyInfo, new GridBagConstraints(0, 2, 1, 2, 0, 0, GridBagConstraints.NORTH,
            GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0));
 
content.add(Sscb, new GridBagConstraints(1, 3, 1, 1, 50, 0, GridBagConstraints.NORTH,
            GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0));
content.add(SsOktcb, new GridBagConstraints(1, 3, 1, 1, 50, 0, GridBagConstraints.NORTH,
            GridBagConstraints.NONE, new Insets(5, 5, 5, 5), 0, 0));
 
setResizable(false);
setSize(600, 500);
setLocationRelativeTo(null);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
content.setBorder(BorderFactory.createLineBorder(Color.red));
        getContentPane().add(content, BorderLayout.PAGE_START);
 
setVisible(true);
 
  public static void main(String[] args) {
     theoryN StWin=new theoryN();  
     
}
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.06.2015, 17:49
Ответы с готовыми решениями:

GridBagLayout
Почему, когда я добавляю элементы с помощью GridBagLayout они остаются в центре JFrame , хоть я задаю c.anchor = GridBagConstraints.NORT,...

GridBagLayout
Помогите пожалуйста разобраться с расположением компонентов. Хочу, чтобы всё начиналось от верхнего левого угла, вместо этого все элементы...

GridBagLayout
Здравствуйте, решил немножко разобраться с GridBagLayout. После получаса мучений решил спросить мнение специалистов.public class GUI...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.06.2015, 17:49
Помогаю со студенческими работами здесь

Менеджер GridBagLayout
Добрый день! Почему не получается получить кнопку 1 в 2 раза длинее по ширине чем кнопка 2 ? public class Tutorial extends JPanel ...

Не работает GridBagLayout()
"живу" на убунте , решил выучить джаву, дошел до создания окон так вот почему не работает GridBagLayout() ? (еклипс) написал вот такой...

GridBagLayout java
решил заняться изучением менеджера расстановки GridBagLayout. Возникли вопросы: как сделать, чтобы кнопка2 прикреплялась к северному...

JPanel GridBagLayout
Здравствуйте, нужно получить такое расположение двух JPanel в GridBagLayout http://s1.ipicture.ru/uploads/20130404/DmttQruH.jpg ...

Помогите с GridBagLayout
Здравствуйте.Помогите пож-та с GridBagLayout.Ниже код.Хочется поставить два RadioaButtona,два текстовых поля и два Buttona рядом с каждым...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru