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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как обновлять jTextField ? Обновить поле по изменению переменной 
V
    Опции темы
ЛунныйОборотень
Дата 31.10.2010, 10:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Здравствуйте!

Есть задача выводить время в текстовое поле и следовательно, встает задача обновления это поля через равные промежутки времени .

Пытался сделать так-
Код

  public static void times() throws InterruptedException {
int k=0;
       while(k>=0)
      {
        Thread.sleep(100);

            DataText.setText("" + Laba6App.time);
       k++; 
       }


    }

И аналогичным способом через цикл.
А метод засунуть в кнопку.

Результат-зависание GUI .

Пришел к выводу,что нужно сделать привязку текстового поля к переменной времени.
Но не знаю как это сделать..

Среда разработки - NetBeans 6.9

Спасибо.



PM MAIL   Вверх
antslava
Дата 31.10.2010, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Что-то вроде этого ?
Код

import java.awt.EventQueue;
import java.awt.FlowLayout;
import java.util.Date;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;


public class ButtonTimer extends JFrame implements Runnable {
    
    private JLabel lblTime = null;
    private JButton btnTime = null;
    
    public static final void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                JFrame frame = new ButtonTimer();
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                frame.setVisible(true);
            }
        });
    }
    
    public ButtonTimer() {
        setTitle("Time Button");
        setLayout(new FlowLayout());
        lblTime = new JLabel("Time: ");
        btnTime = new JButton(new Date(System.currentTimeMillis()).toString());
        add(lblTime);
        add(btnTime);
        pack();
        Executors.newSingleThreadScheduledExecutor().scheduleAtFixedRate(this, 1000, 1000, TimeUnit.MILLISECONDS);
        
    }
    
    public void run() {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                btnTime.setText(new Date(System.currentTimeMillis()).toString());
            }
        });
    }
}


PM MAIL ICQ Skype   Вверх
ЛунныйОборотень
Дата 31.10.2010, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 174
Регистрация: 12.11.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.0863 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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