Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> GridBagLayout и JTextPane 
:(
    Опции темы
xctepx
Дата 3.12.2008, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 24.12.2005

Репутация: нет
Всего: нет



Доброе время суток!

Столкнулся с такой проблемой при использовании GridBagLayout и JTextPane.
На форму кладётся множество текстовых полей для имитации таблицы (простейший аналог Word и OpenOffice Writer).
Но при редактировании данных в одной ячейке меняется размер всех текстовых полей. Но нужно, чтобы изменялся размер только тогда, когда уже не хватает места в текстовом поле. А само текстовое поле должно полностью растягиваться на всю ширину/высоту "ячейки".

Вот простейший пример, который иллюстрирует эту ситуацию.

Код

import javax.swing.*;
import javax.swing.border.LineBorder;
import java.awt.*;

public class Main extends JFrame
{
    public Main()
    {
        super.setLayout(new GridBagLayout());

        GridBagConstraints constraints = new GridBagConstraints();
        constraints.gridwidth = 1;
        constraints.gridheight = 1;
        constraints.anchor = GridBagConstraints.CENTER;
        constraints.fill = GridBagConstraints.BOTH;
        constraints.weightx = 1.0;
        constraints.weighty = 1.0;

        constraints.gridx = 1;
        constraints.gridy = 1;
        JTextPane pane1 = new JTextPane();
        pane1.setBorder(new LineBorder(Color.blue));
        super.add(pane1, constraints);

        constraints.gridx = 2;
        super.add(new JTextPane(), constraints);
        super.setDefaultCloseOperation(EXIT_ON_CLOSE);
    }

    public static void main(String[] args)
    {
        Main m = new Main();
        m.setSize(200, 200);
        m.setVisible(true);
    }
}


Сколько не игрался с параметрами GridBagConstraints, ничего не получается
PM MAIL   Вверх
Connie
Дата 6.12.2008, 17:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 382
Регистрация: 12.8.2008

Репутация: 8
Всего: 9



xctepx, а почему просто не использовать таблицу?
Код


        JTextPane pane1 = new JTextPane();
        pane1.setBorder(new LineBorder(Color.blue));
        super.add(new jScrollPane(pane1), constraints);

PM MAIL WWW   Вверх
xctepx
Дата 7.12.2008, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 24.12.2005

Репутация: нет
Всего: нет



Хмм, спасибо! Помогло!

Таблицу использовать не получится, так как уже слишком много кода придётся изменять
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.0565 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.