Форум программистов, компьютерный форум, киберфорум
Наши страницы
Java GUI
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
KiraLis39
9 / 10 / 1
Регистрация: 23.07.2014
Сообщений: 342
1

Не работает прокрутка поля текста

10.11.2015, 21:51. Просмотров 1652. Ответов 5
Метки нет (Все метки)

Создал два поля текстовых, один для ввода информации, второе рядом для системного вывода. Оба поля нередактируемые. Поставил два ползунка, чтобы при заполнении иметь возможность прокручивать поля. Бестолку - уходит вниз текст и все, ничего не видно.

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
setTitle("Системная консоль");
        setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
        setPreferredSize(new Dimension(1024, 768));
        setLayout(new BorderLayout());
        
            dialogArea = new JTextArea();
            dialogArea.setBackground(Color.BLACK);
            dialogArea.setForeground(Color.GREEN);
            dialogArea.setFont(regdir.RegPage.dialogFont);
            dialogArea.setPreferredSize(new Dimension(485,450));
            dialogArea.setBorder(new EmptyBorder(5,10,5,10));
            dialogArea.setEditable(false);
            dialogArea.setText(currentText);
            dialogArea.setLineWrap(true);
            
                JScrollPane scroll = new JScrollPane(dialogArea);
                scroll.setBackground(Color.BLUE);
                scroll.setPreferredSize(new Dimension(20,0));
                scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
            
            consoleArea = new JTextArea();
            consoleArea.setBackground(Color.BLACK);
            consoleArea.setForeground(Color.ORANGE);
            consoleArea.setFont(regdir.RegPage.consoleFont);
            consoleArea.setPreferredSize(new Dimension(485,450));
            consoleArea.setBorder(new EmptyBorder(0,5,0,5));
            consoleArea.setEditable(false);
            consoleArea.setLineWrap(true);
            consoleArea.setWrapStyleWord(true);
            consoleArea.setText("***CONSOLE OUT***");
            
                JScrollPane scroll2 = new JScrollPane(consoleArea);
                scroll2.setBackground(Color.BLUE);
                scroll2.setPreferredSize(new Dimension(20,0));
                scroll2.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
 
JPanel centerScrollPane = new JPanel();
            centerScrollPane.setBackground(Color.BLACK);
            centerScrollPane.setLayout(new BorderLayout());
            centerScrollPane.add(scroll, BorderLayout.WEST);
            centerScrollPane.add(scroll2, BorderLayout.EAST);
 
        add(dialogArea, BorderLayout.WEST);
        add(centerScrollPane, BorderLayout.CENTER);
        add(consoleArea, BorderLayout.EAST);
        
        pack();
        setLocationRelativeTo(null);
        setVisible(true);
Добавлено через 16 минут
Дописал даже строки
Java
1
2
scroll.setAutoscrolls(true);
scroll.setWheelScrollingEnabled(true);
не работает -_-
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2015, 21:51
Ответы с готовыми решениями:

Как в Swing начинать ввод текста с середины поля?
В современных приложения можно часто увидеть: при вводе данных в текстовое поле...

Прокрутка текста
Посоветуйте пжлст толковый скрипт для прокрутки текста,и главное объясните как...

Прокрутка текста.
Здравствуйте. Подскажите пожалуйста скрипт для прокручивания текста. Я вот...

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

прокрутка текста
Здравствуйте. Ребят помогите раскурочить скрипт прокрутки а точнее дополнить...

5
KiraLis39
9 / 10 / 1
Регистрация: 23.07.2014
Сообщений: 342
10.11.2015, 21:53  [ТС] 2
Не работает прокрутка поля текста

Вот, даже после заполнения полей - полосы прокрутки неизменны.
0
Alradalion
122 / 118 / 82
Регистрация: 13.09.2013
Сообщений: 451
11.11.2015, 17:32 3
Вообще, надо более детально разбираться.
Кое-что закомментил. Правда скролл не по центру, но это уже надо свойства смотреть
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
             JScrollPane scroll2 = new JScrollPane(); //Переправил конструктор
             scroll2.setViewportView(consoleArea); //Добавил строку
             scroll2.setBackground(Color.BLUE);
          // scroll2.setPreferredSize(new Dimension(20,0)); Строка раз
              scroll2.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
 
             JPanel centerScrollPane = new JPanel();
             centerScrollPane.setBackground(Color.BLACK);
             centerScrollPane.setLayout(new BorderLayout());
             centerScrollPane.add(scroll, BorderLayout.WEST);
             centerScrollPane.add(scroll2, BorderLayout.EAST);
 
            add(dialogArea, BorderLayout.WEST);
            add(centerScrollPane, BorderLayout.CENTER);
        //  add(consoleArea, BorderLayout.EAST); Строка два
0
KiraLis39
9 / 10 / 1
Регистрация: 23.07.2014
Сообщений: 342
11.11.2015, 23:34  [ТС] 4
scroll2.setViewportView(consoleArea); //Добавил строку

Это что? Ничего пока не изменилось.

Вот решил написать отдельно для обучения: все так же не работает прокрутка -_-

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
public class PanelClass extends JFrame
{
    private static final long serialVersionUID = 1L;
    
    private static JTextArea area;
    private static JScrollPane scroll;
    private static JPanel mainPane;
 
    public PanelClass()
    {
        setName("Scroll Testing...");
        setPreferredSize(new Dimension(1000, 100));
        
        mainPane = new JPanel();
        mainPane.setBackground(Color.BLACK);
        mainPane.setLayout(new BorderLayout());
        
            area = new JTextArea();
            area.setLayout(new BorderLayout());
            area.setText(">>> \n");
            
                scroll = new JScrollPane(area);
                scroll.setPreferredSize(new Dimension(20, 20));
                scroll.setAutoscrolls(true);
                scroll.setName("Test");
                scroll.setForeground(Color.BLUE);
                scroll.setViewportView(area);
                scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
                
//          area.add(scroll);
                    
        mainPane.add(area, BorderLayout.CENTER);
        mainPane.add(scroll, BorderLayout.EAST);
        
        
        add(mainPane, BorderLayout.CENTER);
        
        pack();
        setLocationRelativeTo(null);
        setVisible(true);
    }
}
Добавлено через 1 минуту
Видно полосу, но она полная, не крутится, текст все так же уходит вниз с концами -_-

Добавлено через 11 минут
Прочитал несколько примеров в инете, вроде же правильно все сделал?
0
Alradalion
122 / 118 / 82
Регистрация: 13.09.2013
Сообщений: 451
12.11.2015, 00:20 5
Лучший ответ Сообщение было отмечено KiraLis39 как решение

Решение

Java
1
mainPane.add(area, BorderLayout.CENTER);
попробуйте убрать
1
KiraLis39
9 / 10 / 1
Регистрация: 23.07.2014
Сообщений: 342
12.11.2015, 12:24  [ТС] 6
Ёпт! Так скрол уже с полем идет! а из-за в скобках (20, 0) его не видно, я думал второе число - его высота, а теперь ясно вообщем, я значит прикреплял поле тестовое и рядом с ним его типа копию со скроллом, но не заметное из-за мелкой ширины, так что только скролл был и писал в первом поле без скролла, вот оно и не реагировало, спасибки!

Добавлено через 34 секунды
Действительно, убрал поле и заметил сразу мелкую щель второго поля рядом со скроллом...
0
12.11.2015, 12:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.11.2015, 12:24

Прокрутка текста с линками
Как сделать горизонтальную прокрутку текста и что-бы каждое слово имело свою...

Анимированная прокрутка текста
Здравствуйте. Пишу книгу, есть желание сделать apk. Не могу сделать прокрутку...

Прокрутка текста в textarea
привет! подскажите, пожалуйста, как сделать прокрутку внутри поля без скролла?...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru