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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> JTextPane & scrollbar, как добавить? 
:(
    Опции темы
Larrr
Дата 5.7.2006, 23:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Здравствуйте! Честно смотрела поиск по теме - ничего из найденного не помогло...
Проблема в том, как привинтить scrollbar к JTextPane.
Код такой:

Код

import javax.swing.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.*;

public class SomeGui
{
    private JTextPane textPane1;
    private JButton button1;
    private JPanel panel;

    public void runAndProcess()
    {
        final JFrame frame = new JFrame("Test Frame");
        frame.setContentPane(panel);
        JScrollPane sp = new JScrollPane();
    
    // если тут раскоментить хотя бы одну из строк, то textPane1 не появляется совсем

    //  sp.setViewportView(textPane1);
    //  sp.setBounds(textPane1.getBounds());

        button1.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent e)
            {
               textPane1.setText(textPane1.getText()+"\nClicked");
            }
        });

        frame.pack();
        frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        frame.setVisible(true);
    }

        public static void main(String[] args)
        {
            SomeGui sg = new SomeGui();
            sg.runAndProcess();

        }

}


Что с этим можно сделать?  smile  

PS. Использую GUI Designer из IntelliJ Idea 

Это сообщение отредактировал(а) Larrr - 5.7.2006, 23:16
PM MAIL WWW ICQ   Вверх
ptr
Дата 6.7.2006, 09:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 661
Регистрация: 31.5.2006
Где: Новосибирск

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



Подобная тема уже была здесь. 


--------------------
Единственный способ определить границы возможного - это выйти за эти границы, в невозможное.
Артур Кларк.
PM MAIL ICQ   Вверх
Vofka
Дата 6.7.2006, 15:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Попробуй

Код

sp.getViewport().add(textPane1, null);
 
PM MAIL   Вверх
ptr
Дата 7.7.2006, 06:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 661
Регистрация: 31.5.2006
Где: Новосибирск

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



Код

JScrollPane sp = new JScrollPane();

sp.setViewportView(textPane1);
frame.getContentPane().add(sp);
 


--------------------
Единственный способ определить границы возможного - это выйти за эти границы, в невозможное.
Артур Кларк.
PM MAIL ICQ   Вверх
corewithin
Дата 10.7.2006, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



А ниче, что у JScrollPane есть конструктор, принимающий JComponent ??

Код

...
    public void runAndProcess()
    {
        final JFrame frame = new JFrame("Test Frame");
        frame.setContentPane(panel);
        panel.setlayout(new BorderLayout());

        JScrollPane sp = new JScrollPane(textPane1);
        panel.add(sp, BorderLayout.CENTER);

        button1.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent e)
            {
               textPane1.setText(textPane1.getText()+"\nClicked");
            }
        });

        frame.pack();
        frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        frame.setVisible(true);
    }
...



например так...
это с учето того, что не понятно как инициализируются panel и textPane1... 
PM MAIL   Вверх
Vofka
Дата 11.7.2006, 10:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Просто когда делаешь через Viewport не надо каждый раз вызывать конструктор когда например надо помянять содержимое скролла. 
PM MAIL   Вверх
corewithin
Дата 11.7.2006, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



ох не надо... сердце хватает...

Код

JScrollPane sp = new JScrollPane();
// если тут раскоментить хотя бы одну из строк, то textPane1 не появляется совсем
//  sp.setViewportView(textPane1);


Код

JScrollPane sp = new JScrollPane();
sp.setViewportView(textPane1);
frame.getContentPane().add(sp);



что-то не заметно даже при очень детальном рассмотрении смены контента для панели скроллинга... ну а твой [Vofka] пример вообще вырван из контекста... так что... 
PM MAIL   Вверх
Vofka
Дата 11.7.2006, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



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

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

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


 




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


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

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