Не работают кнопки в апплете
Добавлено: 22 дек 2010, 15:47
Задание: Реализуйте апплет с цифровым отображением времени. Ваш апплет должен считывать параметры, указывающие частоту обновления таймера, а также шрифт, цвет и формат представления времени. (См. класс java.text.SimpleDateFormat для изучения механизма форматирования даты и времени в соответствии с заданным шаблоном.) Кроме того, добавьте метод getParameterInfo(), описывающий параметры апплета, которые вы определили, и измените метод getAppletInfo(), включив сообщение, описывающее ваше участие в создании апплета.
Не работают кнопки, помогите!!!
Не работают кнопки, помогите!!!
Код: Выделить всё
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.border.TitledBorder;
public class myClock extends JApplet implements ActionListener, Runnable {
Label time;
DateFormat timeFormat;
Thread timer;
int speed = 1, color;
JButton
b1,b2,b3;
TextField
t1,t3;
//JPanel panel;
JCheckBox
cb1 = new JCheckBox("Формат");
String sfont = "Arial";
String [] allFonts = java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames();
//Font font = sfont;
volatile boolean running;
public void init() {
b1 = new JButton("Частота обновления");
b2 = new JButton("Шрифт");
b3 = new JButton("Цвет");
t1 = new TextField();
t3 = new TextField(14);
Container cp = getContentPane();
cp.setLayout(new FlowLayout());
cp.add(t1);
cp.add(b1);
cp.add(b2);
//cp.add(t3);
//cp.add(b3);
//cp.add(cb1);
b1.addActionListener(this);
t1.addActionListener(this);
b2.addActionListener(this);
//t2.addActionListener(this);
//b3.addActionListener(this);
//t3.addActionListener(this);
time = new Label();
time.setFont(new Font(sfont, Font.BOLD, 12));
time.setAlignment(Label.CENTER);
setLayout(new BorderLayout());
add(time, BorderLayout.SOUTH);
timeFormat = DateFormat.getTimeInstance(DateFormat.MEDIUM);
}
public void actionPerformed(ActionEvent e) {
//String str = ((JButton) e.getSource()).getText();
if (e.getSource()== b1){ speed = Integer.parseInt(t1.toString());}
if (e.getSource() == b2)
b2 = (JButton) JOptionPane.showInputDialog(null,"Выбери шрифт","Изменение шрифта",JOptionPane.INFORMATION_MESSAGE,null,allFonts,allFonts[0]);
//if (e.getSource() == b3)
}
public void start() {
running = true;
if (timer == null)
{
timer = new Thread(this);
timer.start();
}
}
public void run()
{
while(running)
{
time.setText(timeFormat.format(new Date()));
try { Thread.sleep(speed); }
catch (InterruptedException e) {}
}
timer = null;
}
public void stop() { running = false; }
public String[][] getParameterInfo() { return super.getParameterInfo();}
public String getAppletInfo() { return "Clock applet Copyright (с) 2010 by Roman Homenko";}
}