Форум программистов, компьютерный форум CyberForum.ru

Java ME (J2ME)

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
TatyanaYA
0 / 0 / 0
Регистрация: 27.04.2013
Сообщений: 96
#1

Как можно визуализировать работу таймера? - Java ME

11.03.2015, 12:46. Просмотров 1666. Ответов 9
Метки нет (Все метки)

Подскажите, пожалуйста, как можно визуализировать работу таймера
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2015, 12:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как можно визуализировать работу таймера? (Java ME):

Какое направление Java перспективно,чтобы можно было найти работу? - Java
Хотел поинтересоваться,какое направление Java перспективно,чтобы можно было найти работу? И ещё один вопрос - как Java подходит для...

Реализовать работу таймера в потоке - C#
я написал приложение которое должно в двух разных потоках обрабатывать два progressbar-а есть 2 таймера. по событию таймер тик происходит...

JavaScript слайдера блокирует работу таймера - JavaScript
Здравствуйте! Подскажите, такая проблема: вставил на сайт javascript слайдера, после этого перестал работать таймер и некоторые ссылки....

Реализовать работу таймера для обратного отсчета времени - C#
При запуске главной формы нажимаем кнопку "Начать" -> должна появиться форма "Указать время в минутах", где необходимо выбрать любое кол-во...

При определенных условиях прервать работу таймера и начать заново - C#
Добры день! Подскажите пожалуйста.. меняю метод таймера timertick, интервал таймера к примеру 1000. Нужно, чтобы при определенных условиях,...

_tWinMain(): организовать запуск и работу таймера на фоне работы ReadDirectoryChangeW() - Visual C++
Вот так таймер работает: int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int cmdShow) { ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Pablito
2471 / 1916 / 595
Регистрация: 12.05.2014
Сообщений: 6,741
Завершенные тесты: 1
11.03.2015, 12:49 #2
Вывести на экран циферблат часов с секундной стрелкой.
Да что там циферблат, и электронные пойдут.

Знак вопроса в конце вопросительных предложений ставить уже не модно?
TatyanaYA
0 / 0 / 0
Регистрация: 27.04.2013
Сообщений: 96
11.03.2015, 12:53  [ТС] #3
Паблито, когда просьба, знак вопроса не ставят. как это реализовать, подскажите?
Pablito
2471 / 1916 / 595
Регистрация: 12.05.2014
Сообщений: 6,741
Завершенные тесты: 1
11.03.2015, 13:18 #4
Сначала хотелось бы понять, что значит "визуализировать работу таймера".
И надо уточнить на каком языке это нужно делать.
TatyanaYA
0 / 0 / 0
Регистрация: 27.04.2013
Сообщений: 96
11.03.2015, 13:24  [ТС] #5
Паблито, Java, это значит, чтобы на экране был отсчет
Pablito
2471 / 1916 / 595
Регистрация: 12.05.2014
Сообщений: 6,741
Завершенные тесты: 1
11.03.2015, 13:52 #6
на скорую руку набросал
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
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
 
public class TimerVisualisation extends JFrame implements ActionListener {
 
    private final JLabel label;
    private final Timer timer;
    private int value = 0;
 
    TimerVisualisation() {
        timer = new Timer(1000, this);
        label = new JLabel();
        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        add(label);
        setSize(200, 200);
        setLocationRelativeTo(null);
        setVisible(true);
        timer.start();
    }
 
    @Override
    public void actionPerformed(ActionEvent e) {
        value++;
        label.setText("Прошло: " + value + " сек...");
    }
 
    public static void main(String[] args) {
        TimerVisualisation tv = new TimerVisualisation();
    }
}
TatyanaYA
0 / 0 / 0
Регистрация: 27.04.2013
Сообщений: 96
13.03.2015, 16:00  [ТС] #7
Паблито, добрый день. Ваша программа у меня не запускается. наверное, мы не поняли друг друга. мне нужно написать Mobility Application на Java ME. там таких библиотек нет.
Pablito
13.03.2015, 16:09
  #8

Не по теме:

да, че то я затупил, забыл что это раздел Java ME
отпишусь от него пожалуй

TatyanaYA
0 / 0 / 0
Регистрация: 27.04.2013
Сообщений: 96
13.03.2015, 17:09  [ТС] #9
Паблито, очень жаль, что не можете мне помочь
MLPMan
Кандёхаем веселее!
283 / 277 / 34
Регистрация: 02.10.2012
Сообщений: 1,970
15.03.2015, 21:21 #10
Похоже, надо содать свой Canvas и рисовать на нём в методе paint() используя аргумент Graphics. Периодическое перерисовывание инициируется объектом TimerTask. Набросал пример:

Рисовальщик
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Font;
import javax.microedition.lcdui.Graphics;
 
public class DrawPane extends Canvas {
 
    public int v = 0;
    
    /**
     * Рисует значение v в красном квадрате
     */
    protected void paint(Graphics g) {
        g.setColor(255,0,0);
        g.fillRect(0, 0, 90, 90);
        g.setColor(0, 0, 0);
        g.setFont(Font.getDefaultFont());
        g.drawString(String.valueOf(v), 30, 30, Graphics.BASELINE|Graphics.LEFT);
        
    }
    
}
Таймер
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
import java.util.*;
import javax.microedition.lcdui.Canvas;
 
    
/**
 * Исполнитель периодичного действия
 */
class TT extends TimerTask {
 
        DrawPane c;
        
        public void run() {
               c.v += 1;
               c.repaint();
        }
    
}
    
/*
 * Исполнитель в определённое время
 */
public class Task2 extends Timer {
 
    public TT t = new TT();
    
    public Task2(DrawPane c) {
        super();
        t.c = c;
        this.schedule(t, Calendar.getInstance().getTime(), 1000l); //исполняем с текущего момента каждые 1000 мс
    }                
}
Запускальщик (собственно, мидлет)
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
 
public class Midlet extends MIDlet {
 
    DrawPane p = new DrawPane();
    Task2 t;
    
    public void startApp() {    
        Display d = Display.getDisplay(this);        
        t = new Task2(p);
        d.setCurrent(p);        
    }
    
    
    public void pauseApp() {}
    
    public void destroyApp(boolean unconditional) {}
    
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.03.2015, 21:21
Привет! Вот еще темы с ответами:

Создать собственный класс MTimer, моделирующий работу системного таймера - C#
Создание собственного класса MTimer В задании нужно создать собственный класс, моделирующий работу системного таймера. Класс имеет...

Подскажите, как можно ускорить работу программы - Bash
Условие: Первая строка входных данных содержит натуральное число N - количество элементов массива (1 ≤ N ≤ 1000). Следующая строка содержит...

Как можно полностью скрыть работу программы? - C#
Делаю программу, которую буду использовать только в сааааамые редкие случаи. Но нужно что бы она была всегда под рукой! Нужно...

Как можно оформить курсовую работу в VB покреативнее - Visual Basic
Как можно оформить курсовую работу в VB покреотивнее ?


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
15.03.2015, 21:21
Ответ Создать тему
Опции темы

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