#java #swing #jframe #refresh #jlabel
#java #swing #jframe #обновить #jlabel
Вопрос:
Я пытаюсь обновить свои данные в тексте JLabel. Мои данные в «mod.getAllPlaneteByUser (u).getQte_or ()» получают данные из моей базы данных.
Компонент «lblRefresh» — это просто прослушиватель JLabel.
—> Инициализация :
JLabel lblRessOr = new JLabel();
lblRessOr.setText(Integer.toString(mod.getAllPlaneteByUser(u).getQte_or()));
—> Добавить по умолчанию в мою панель содержимого :
lblRessOr.setForeground(Color.RED);
lblRessOr.setFont(new Font("Lucida Grande", Font.BOLD, 16));
lblRessOr.setBounds(225, 141, 73, 16);
contentPane.add(lblRessOr);
—> Использовать в моем MouseListener :
if(e.getSource() == lblRefresh){
lblRefresh.setText(Integer.toString(mod.getAllPlaneteByUser(u).getQte_or()));
lblRefresh.repaint();
}
Кто-нибудь знает, как я могу обновить свои данные?
Комментарии:
1. Похоже, вам нужно перерисовать весь фрейм, а не только метку.
2. Я попытался перерисовать весь фрейм, но безрезультатно.
3. Вы хотите обновить данные, как только кто-то что-то напишет в ярлыке??
4. Я получаю данные из MySQL и хотел бы обновить с помощью кнопки мою JLabel, но я выбираю старый результат моего запроса. Я хотел бы получить новые данные.
Ответ №1:
Если вы пытаетесь изменить текст в Jlabel lblRessOr, вы должны поместить приведенный ниже код в свой блок прослушивателя.
if(e.getSource().equals(lblRefresh)){
lblRessOr.setText(Integer.toString(mod.getAllPlaneteByUser(u).getQte_or()));
}
Комментарии:
1. Да, я делаю это, и результата нет, текст, помещенный в мой «lblRessOr», не отображается в моем JFrame.