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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> заставить линию двигатся туда сюда, помогите,не знаю как 
:(
    Опции темы
Muerto
Дата 13.1.2007, 14:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

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



вот такой код

Код

import java.awt.*;
import javax.swing.*;
import java.awt.geom.*;
import java.awt.event.*;
/**
 *
 * @author David Kurushin
 */
public class V_Metronome extends JPanel {
   
    /** Creates a new instance of V_Metronome */
    public V_Metronome() {
        setBackground(new Color(20, 20, 20));

    }
    
    public void paint(Graphics g){
     Metronome frm_Data=new Metronome("Metronome");
        Dimension d = getSize();
        Graphics2D g2 = (Graphics2D) g;
        g2.setBackground(getBackground());
        g2.clearRect(0, 0, d.width, d.height);
         Color jfcBlue = new Color(204, 204, 255);
        g2.setColor(jfcBlue);
        if(frm_Data.getNumNum() == 1){
       g2.drawLine(20,20,100,100);}
       else  g2.drawLine(100,100,180,20);
      
    }

    
}



и есть таймер в другом класе

мне нужно сделать что бы палоска,каждый раз то одна была то другая, (я делаю метроном...).
но пока не выходит как хочу,помогите пожалуйста

Добавлено @ 14:38 
вот так он пока выглядит:

Это сообщение отредактировал(а) Muerto - 13.1.2007, 14:39

Присоединённый файл ( Кол-во скачиваний: 19 )
Присоединённый файл  my_metronome_beta_version.JPG 33,37 Kb


--------------------
user posted image
PM MAIL   Вверх
powerOn
Дата 13.1.2007, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


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

Репутация: 31
Всего: 159



А что это за класс:
Цитата(Muerto @  13.1.2007,  14:36 Найти цитируемый пост)
etronome frm_Data=new Metronome("Metronome");

? 
И почему вы каждый раз создаёте новый экземпляр этого класса в методе paint?


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
Muerto
Дата 13.1.2007, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

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



Спасибо всем,проблема решена.

Добавлено @ 15:42 
powerOn-
у меня есть метроном,клик он делает через таймер.
таймер играет звукавой файл,и теперь двигает стрелку а точней просто меняет цифру и делает репейнт!
моя проблема была больше с класами... я с дуру создал новый класс и изменял там вещи,смотрю ничего не двигается!
и дошло)) что цыфру то я изменял в другом классе...
ну кароч мой метроном фактически закончен,стрелочка на картинке теперь двигается когда он кликает!
когда закончку выложу полную версию на заценку =-)

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

выглядит это так(это то что таймер делает)
Код

timer.scheduleAtFixedRate(new TimerTask() {
            public void run() {
             
    try {
       stream = AudioSystem.getAudioInputStream(file);
            format = stream.getFormat();
        stream = AudioSystem.getAudioInputStream(format, stream);
        // Create the clip
        DataLine.Info info = new DataLine.Info(
            Clip.class, stream.getFormat(), ((int)stream.getFrameLength()*format.getFrameSize()));
        
        clip = (Clip) AudioSystem.getLine(info);
        // This method does not return until the audio file is completely loaded
        clip.open(stream);
                 FloatControl gainControl = 
                  (FloatControl) clip.getControl(FloatControl.Type.MASTER_GAIN);
                float dB = (float) 
                  (Math.log(value==0.0?0.0001:value)/Math.log(10.0)*20.0);
                gainControl.setValue(dB);
                if(value> 0)
                {
             // Start playing
             clip.start();
             if(metronome.getNumNum() == 1){
             metronome.setNumNum(0);
         }
         else{
         metronome.setNumNum(1);    
         }
             visual_m.repaint();
             }
        
    } catch (IOException e) {
    } catch (LineUnavailableException e) {
    } catch (UnsupportedAudioFileException e) {
    }
    
    }
       }, delay, period);


Это сообщение отредактировал(а) Muerto - 13.1.2007, 15:43


--------------------
user posted image
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.0558 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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