Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.10.2019, 10:02   #1
KeeperWar
Новичок
Джуниор
 
Регистрация: 02.10.2019
Сообщений: 2
Вопрос Обновление JLabel при нажатии JButton

Укажите на ошибку, при нажатии на кнопку необходимо в окне обновить текст. Проверяю выводом в консоль, данные меняются, но в окне изменений не происходит.Как исправить данную ситуацию?
Использую класс JFrameTest:
Код:
public class JFrameTest
{
    String [] arrayQuestion={
            "11","22","33"
    };
    int i=0;
    String a = arrayQuestion[i];
    public class TestListener implements ActionListener{
        @Override
        public void actionPerformed(ActionEvent e) {
        }
    }
    public void createGUI()
    {
        JFrame frame = new JFrame("Test frame");//Создаем окно приложения
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//указываем действие при нажатии на Крест
        frame.setSize(1000,700);//задаю размер окна
        frame.setLocationRelativeTo(null);//центрирую окно
        frame.setResizable(false);//запрет на изменение размера окна
        frame.setVisible(true);//Видимость окна

        JPanel questionPanel = new JPanel();
        frame.getContentPane().add(questionPanel);
        questionPanel.setBackground(Color.CYAN);
        questionPanel.setLayout(null);//для выставления ручного позицианирования элементов
        questionPanel.setVisible(true);

        JButton btnOne = new JButton("Первый вопрос");
        JButton btnTwo = new JButton("Второй вопрос");
        JButton btnThree = new JButton("Третий вопрос");
        JButton btnFour = new JButton("Не знаю");

        btnOne.setActionCommand("one");
        btnOne.setBounds(560,220,400,50);
        questionPanel.add(btnOne);

        JLabel questionLabel = new JLabel(a);
        questionLabel.setBounds(10,10,950,180);
        //questionLabel.setOpaque(true);//для включения цвета фона
        questionLabel.setBackground(Color.green);//цвет фона заметки (использовал для настройки разположения)
        questionLabel.setVerticalAlignment(SwingConstants.BOTTOM);//расположение по вертикали текста в заметке
        questionLabel.setHorizontalAlignment(SwingConstants.LEFT);//расположение по горизонтали текста в заметке
        Font font = new Font("Courier New", Font.PLAIN, 16);//создаем обьект, что бы передать его в заметку
        questionLabel.setFont(font);
        questionPanel.add(questionLabel);

        ActionListener actionListener = new TestListener();
        btnOne.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                if(e.getActionCommand() == "one"){
                    i++;
                    questionLabel.setText(a);
                    System.out.println(arrayQuestion[i]);
                    System.out.println(e.getActionCommand());

                };

            }
        });
    }
    public void main()
    {   //обозначает специальное оформление
        JFrame.setDefaultLookAndFeelDecorated(false);
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                createGUI();
            }
        });
    }
}
И класс Main:
Код:
public class Main {
    public static void main(String[] args){
        JFrameTest j = new JFrameTest();
        j.createGUI();

    }
}
KeeperWar вне форума Ответить с цитированием
Старый 02.10.2019, 15:00   #2
KeeperWar
Новичок
Джуниор
 
Регистрация: 02.10.2019
Сообщений: 2
По умолчанию

Не актуально. Нашел ошибку.
KeeperWar вне форума Ответить с цитированием
Старый 06.10.2019, 22:56   #3
Bugrimov
C/C++, Java
Участник клуба
 
Аватар для Bugrimov
 
Регистрация: 28.03.2012
Сообщений: 1,680
По умолчанию

В чем она была?
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости"
Сложность - враг простоты и удобства!
Bugrimov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать обновление фотографий при нажатии на кнопку? Sergey2121 JavaScript, Ajax 8 18.05.2018 11:45
Обновление картинки при нажатии кнопки. Strangers JavaScript, Ajax 2 15.02.2012 08:12
jLabel megostudent Общие вопросы по Java, Java SE, Kotlin 1 12.01.2012 03:53
Обновление экрана при нажатии ToggleButton Severny Microsoft Office Excel 2 17.11.2011 16:44
Обновление заданной области экрана при нажатии клавиши Jack Torrance Win Api 3 26.05.2008 10:57