Центр или справа jtextarea в jpanel

У меня есть это для моего jtextarea, я пытаюсь выровнять его по центру или справа, но он всегда за пределами окон.

Вот результат, который у меня есть на данный момент:

Центр или справа jtextarea в jpanel

С этим кодом:

    Popup noticePopup = new Popup("Notice" , 1500, 900);
                JPanel noticePanel = new JPanel();
                noticePanel.setPreferredSize(new Dimension(1500,1000));
                List<List> ListNote = controller.Medicament.consultationNotice(idMedoc);
                String noticeThis =null;
                for(int n=0;n<ListNote.size();n++) {
                    noticeThis = (String) ListNote.get(n).get(1);
                }
                JTextArea noticeArea = new JTextArea(noticeThis);
                noticePopup.add(noticePanel);
                noticePanel.add(noticeArea);
                noticeArea.setAlignmentX(JTextArea.CENTER_ALIGNMENT);

Спасибо

JTextPane хорошо для вас? Потому что у JTextArea есть некоторые недостатки в выравнивании текста. Посмотрите здесь: stackoverflow.com/questions/24315757/…

FonzTech 14.03.2019 10:58

Почему вы используете Popup «тяжеловесный» компонент АВТ, а остальные — «облегченные» компоненты Качать?

Usagi Miyamoto 14.03.2019 11:04

потому что мне нужно, чтобы этот текст был на новой странице

mel 15.03.2019 11:09
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
3
122
1

Ответы 1

вы можете попробовать что-то вроде JTextPane, а не JTextArea

JTextPane textPane = new JTextPane();

SimpleAttributeSet attributes = new SimpleAttributeSet();
StyleConstants.setAlignment(attributes, StyleConstants.ALIGN_RIGHT);
textPane.setParagraphAttributes(attributes, true);

если вы хотите использовать JTextArea, вам нужно добавить панель прокрутки, а затем scorllpane станет частью панели, попробуйте код ниже

                JTextArea text = new JTextArea(-, -);
                JScrollPane sPane = new JScrollPane( text );
                JPanel panel = new JPanel();
                panel.add( sPane );

                sPane.addAncestorListener( new AncestorListener()
                {
                    public void ancestorAdded(AncestorEvent e)
                    {
                        JScrollPane sPane = (JScrollPane)e.getComponent();
                        sPane.applyComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
                    }
                });

надеюсь, это сработает для вас

нет, я хочу использовать jtextarea, потому что мне это нужно, чтобы поместить в него переменную

mel 15.03.2019 11:08

добавлено с JTextArea, пожалуйста, попробуйте

NPE 15.03.2019 11:42

Я не могу использовать панель прокрутки, потому что она распространяется на jpanel, а не на jframe (по некоторым требованиям). И с jtextarea, которую я пробовал, вы решаете CRR тоже не работает...

mel 15.03.2019 12:39
i need that for put a variable on it - почему вы думаете, что нельзя использовать переменную с JTextPane? Используйте метод setText(...).
camickr 15.03.2019 15:46

Другие вопросы по теме