Thanks but that won't work. I already have the gui coded here is an older version of it: I need to be able to use the existing buttons.
http://www.experts-exchang
Main Topics
Browse All TopicsHow could I be able to edit the hours and minutes with JButtons one for hours, one for minutes which will activate those formating areas and up and down buttons to advance and decrease the numbers.
public void run()
{
String s;
while (true)
{
Calendar c = Calendar.getInstance();
StringBuilder builder = new StringBuilder();
Formatter formatter = new Formatter(builder);
formatter.format("%02d:%02
formatter.flush();
s = builder.toString();
try
{
t.sleep(1000);
}
catch (Exception e)
{
}
time.setText(" " + s);
listenerTF.setText(time.ge
}
}
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
Thanks but that won't work. I already have the gui coded here is an older version of it: I need to be able to use the existing buttons.
http://www.experts-exchang
I found this class out there, but I don't know how to just edit the hour, minutes in the same JTextField that you will see in the code I supplied in the referred question above for the GUI
private class TimeResetter extends JPanel
{
private Listener listener = new Listener();
private JTextField hour, minute, second;
public TimeResetter(long initialTime)
{ // constructor
setLayout(new GridLayout(1, 5, 0, 0)); // 1 row, 5 "columns"
String initH = String.format("%2d", initialTime / 3600);
hour = new JTextField(initH, 2);
add(hour);
add(new JLabel(":", JLabel.CENTER));
String initM = String.format("%02d", (initialTime % 3600) / 60);
minute = new JTextField(initM, 2);
add(minute);
String initS = String.format("%02d", initialTime % 60);
add(new JLabel(":", JLabel.CENTER));
second = new JTextField(initS, 2);
add(second);
hour.addActionListener(lis
minute.addActionListener(l
second.addActionListener(l
}
private class Listener implements ActionListener
{
public void actionPerformed(ActionEven
{
int h, m, s;
try
{
h = Integer.parseInt(hour.getT
}
catch (NumberFormatException nfe)
{
blink(hour);
return;
}
if (h < 0 || h > 23)
{
blink(hour);
return;
}
try
{
m = Integer.parseInt(minute.ge
}
catch (NumberFormatException nfe)
{
blink(minute);
return;
}
if (m < 0 || m > 59)
{
blink(minute);
return;
}
try
{
s = Integer.parseInt(second.ge
}
catch (NumberFormatException nfe)
{
blink(second);
return;
}
if (s < 0 || s > 59)
{
blink(second);
return;
}
counter.set(h * 3600 + m * 60 + s);
}
private void blink(JTextField f)
{
Graphics g = getGraphics();
for (int i = 0; i < 3; i++)
{
f.setVisible(false);
update(g);
try
{
Thread.sleep(300);
}
catch (InterruptedException e)
{
}
f.setVisible(true);
update(g);
try
{
Thread.sleep(300);
}
catch (InterruptedException e)
{
}
}
}
}
}
I have added pseudo code where you need to actually parse the string and update the hour and minut fields.
Check the rest. Changes have been done to both the classes :
import java.awt.event.ActionEvent
import javax.swing.JLabel;
public class GuiPanel extends javax.swing.JFrame
{
enum Mode {
Alarm, Timer, Clock, Date, Audio
};
private java.util.List<Mode> modes;
private int modeIndex;
private Mode currentMode;
boolean alarmStarted = false;
public String alarmTime;
// private/** Creates new form GuiPanel */
public GuiPanel()
{
initComponents();
initModes();
}
private void initModes()
{
modes = new java.util.ArrayList<Mode>(
for (Mode m : Mode.values())
{
modes.add(m);
}
modeButton.setAction(new AdvanceModeAction("Mode"))
}
private class AdvanceModeAction extends javax.swing.AbstractAction
{
public AdvanceModeAction(String name)
{
super(name);
}
public void actionPerformed(java.awt.e
{
advanceMode();
modeDisplay.setText(curren
enableAllButtons();
if (currentMode == Mode.Alarm)
{
recordButton.setEnabled(fa
playButton.setEnabled(fals
stopButton.setEnabled(fals
fastButton.setEnabled(fals
alarmTempDisplay = new JLabel(timeDisplay.getText
alarmStarted = false;
dispProv.setDispListener(a
}
else if (currentMode == Mode.Audio)
{
hourButton.setEnabled(fals
minutesButton.setEnabled(f
}
else if (currentMode == Mode.Clock)
{
recordButton.setEnabled(fa
playButton.setEnabled(fals
stopButton.setEnabled(fals
}
else if (currentMode == Mode.Date)
{
recordButton.setEnabled(fa
playButton.setEnabled(fals
stopButton.setEnabled(fals
}
else if (currentMode == Mode.Timer)
{
recordButton.setEnabled(fa
playButton.setEnabled(fals
stopButton.setEnabled(fals
dispProv.setDispListener(t
}
}
}
private class AlarmButtonSelectAction extends javax.swing.AbstractAction
{
public final int HR = 0;
public final int MIN = 1;
int selected = -1;
public void actionPerformed(ActionEven
{
String cmd = e.getActionCommand();
if (currentMode == Mode.Alarm)
{
if (cmd.equals(hourButton.get
{
selected = HR;
}
else if (cmd.equals(minutesButton.
{
selected = MIN;
}
else if (cmd.equals(upButton.getTe
{
if (selected == HR)
{
String time = timeDisplay.getText();
//start incrementing for the hour field in alarmDisplay
//by manually parsing and modifying
timeDisplay.setText(time);
}
else if (selected == MIN)
{
String time = timeDisplay.getText();
//start incrementing the minute field
//by manually parsing and modifying
timeDisplay.setText(time);
}
}
else if (cmd.equals(downButton.get
{
if (selected == HR)
{
String time = timeDisplay.getText();
//start incrementing for the hour field in alarmDisplay
//by manually parsing and modifying
timeDisplay.setText(time);
}
else if (selected == MIN)
{
String time = timeDisplay.getText();
//start incrementing the minute field
//by manually parsing and modifying
timeDisplay.setText(time);
}
}
else if (cmd.equals(okButton.getTe
{
//time should be stored in alarmDisplay
alarmStarted = true;
alarmTime = timeDisplay.getText();
selected = -1;
}
}
}
}
private void enableAllButtons()
{
downButton.setEnabled(true
fastButton.setEnabled(true
hourButton.setEnabled(true
minutesButton.setEnabled(t
modeButton.setEnabled(true
okButton.setEnabled(true);
playButton.setEnabled(true
recordButton.setEnabled(tr
stopButton.setEnabled(true
upButton.setEnabled(true);
}
private void advanceMode()
{
currentMode = modes.get(modeIndex++ % modes.size());
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
private void initComponents()
{
jPanel1 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
timeDisplay = new javax.swing.JLabel();
jPanel2 = new javax.swing.JPanel();
modeDisplay = new javax.swing.JTextField();
jPanel3 = new javax.swing.JPanel();
modeButton = new javax.swing.JButton();
okButton = new javax.swing.JButton();
hourButton = new javax.swing.JButton();
minutesButton = new javax.swing.JButton();
recordButton = new javax.swing.JButton();
playButton = new javax.swing.JButton();
fastButton = new javax.swing.JButton();
stopButton = new javax.swing.JButton();
upButton = new javax.swing.JButton();
downButton = new javax.swing.JButton();
AlarmButtonSelectAction alarmButtonSelectAction = new AlarmButtonSelectAction();
setDefaultCloseOperation(j
setResizable(false);
jPanel1.setBackground(new java.awt.Color(255, 255, 255));
jLabel1.setFont(new java.awt.Font("Tahoma", 2, 18));
jLabel1.setForeground(new java.awt.Color(51, 51, 255));
jLabel1.setHorizontalAlign
jLabel1.setText("Audio Reminder Panel");
timeDisplay.setFont(new java.awt.Font("Tahoma", 0, 36));
timeDisplay.setForeground(
timeDisplay.setHorizontalA
timeDisplay.setText("00:00
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jP
jPanel1.setLayout(jPanel1L
jPanel1Layout.setHorizonta
jPanel1Layout.setVerticalG
jPanel2.setBackground(new java.awt.Color(0, 0, 0));
modeDisplay.setBackground(
modeDisplay.setEditable(fa
modeDisplay.setFont(new java.awt.Font("Tahoma", 1, 12));
modeDisplay.setHorizontalA
javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jP
jPanel2.setLayout(jPanel2L
jPanel2Layout.setHorizonta
jPanel2Layout.setVerticalG
jPanel3.setBackground(new java.awt.Color(255, 255, 255));
modeButton.setBackground(n
modeButton.setFont(new java.awt.Font("Tahoma", 1, 11));
modeButton.setForeground(n
modeButton.setText("Mode")
modeButton.addActionListen
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
okButton.setBackground(new
okButton.setFont(new java.awt.Font("Tahoma", 1, 11));
okButton.setForeground(new
okButton.setText("OK");
okButton.addActionListener
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
okButton.addActionListener
hourButton.setBackground(n
hourButton.setFont(new java.awt.Font("Tahoma", 1, 11));
hourButton.setForeground(n
hourButton.setText("Hour")
hourButton.addActionListen
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
hourButton.addActionListen
minutesButton.setBackgroun
minutesButton.setFont(new java.awt.Font("Tahoma", 1, 11));
minutesButton.setForegroun
minutesButton.setText("Min
minutesButton.addActionLis
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
minutesButton.addActionLis
recordButton.setBackground
recordButton.setFont(new java.awt.Font("Tahoma", 1, 11));
recordButton.setForeground
recordButton.setText("Reco
recordButton.addActionList
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
playButton.setBackground(n
playButton.setFont(new java.awt.Font("Tahoma", 1, 11));
playButton.setForeground(n
playButton.setText("Play")
playButton.addActionListen
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
fastButton.setBackground(n
fastButton.setFont(new java.awt.Font("Tahoma", 1, 11));
fastButton.setForeground(n
fastButton.setText("Fast")
fastButton.addActionListen
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
stopButton.setBackground(n
stopButton.setFont(new java.awt.Font("Tahoma", 1, 11));
stopButton.setForeground(n
stopButton.setText("Stop")
stopButton.addActionListen
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
upButton.setBackground(new
upButton.setFont(new java.awt.Font("Tahoma", 1, 11));
upButton.setForeground(new
upButton.setText("Up");
upButton.addActionListener
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
upButton.addActionListener
downButton.setBackground(n
downButton.setFont(new java.awt.Font("Tahoma", 1, 11));
downButton.setForeground(n
downButton.setText("Down")
downButton.addActionListen
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
downButton.addActionListen
javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jP
jPanel3.setLayout(jPanel3L
jPanel3Layout.setHorizonta
jPanel3Layout.linkSize(jav
jPanel3Layout.setVerticalG
jPanel3Layout.linkSize(jav
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(ge
getContentPane().setLayout
layout.setHorizontalGroup(
layout.setVerticalGroup(la
pack();
}// </editor-fold>
private void event(java.awt.event.Actio
{
// TODO add your handling code here:
}
/**
* @param args the command line arguments
*/
public static void main(String args[])
{
java.awt.EventQueue.invoke
{
public void run()
{
new GuiPanel().setVisible(true
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton downButton;
private javax.swing.JButton fastButton;
private javax.swing.JButton hourButton;
private javax.swing.JLabel jLabel1;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JButton minutesButton;
private javax.swing.JButton modeButton;
private javax.swing.JTextField modeDisplay;
private javax.swing.JButton okButton;
private javax.swing.JButton playButton;
private javax.swing.JButton recordButton;
private javax.swing.JButton stopButton;
private javax.swing.JLabel timeDisplay;
private javax.swing.JButton upButton;
private JLabel alarmTempDisplay;
// End of variables declaration
public javax.swing.JLabel getTimeDisplay()
{
return timeDisplay;
}
public void setTimeDisplay(javax.swing
{
this.timeDisplay = timeDisplay;
}
/**
* @param prn
*/
public void setDispProvider(DispTime prn)
{
dispProv = prn;
}
private DispTime dispProv;
}
import java.util.Calendar;
import java.util.Formatter;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class DispTime extends JFrame implements Runnable
{
Calendar calendar;
int i;
JTextField time;
Thread t;
DispTime()
{
time = new JTextField();
time.setEditable(false);
t = new Thread(this);
t.start();
}
public void run()
{
String s;
while (true)
{
Calendar c = Calendar.getInstance();
StringBuilder builder = new StringBuilder();
Formatter formatter = new Formatter(builder);
formatter.format("%02d:%02
formatter.flush();
s = builder.toString();
try
{
t.sleep(1000);
}
catch (Exception e)
{
}
time.setText(" " + s);
listenerTF.setText(time.ge
}
}
public static void main(String[] args)
{
final DispTime PRN = new DispTime();
final GuiPanel gp = new GuiPanel();
PRN.setDispListener(gp.get
gp.setDispProvider(PRN);
java.awt.EventQueue.invoke
{
public void run()
{
gp.setVisible(true);
}
});
}
/**
* @param timeDisplay
*/
public void setDispListener(JLabel timeDisplay)
{
this.listenerTF = timeDisplay;
}
private JLabel listenerTF;
}
Now, when you click on alarm, the clock will stop, and you should be able to edit the hour and minute.
[Make sure you write hte code where I have added the comments in the GuiPanel.AlarmButtonSelect
when finally ok is clicked, the alarm time will get stored in a string called as alarmTime. Yo can use that where reqd.
When the mode is set to Timer again, normal process starts.
You can change the code around and add some more behaviour for the other modes
Thanks I though I had to access the text in the formatter and that stopped my thinking process. I see the way you coded it, very nice! You keep it nice and simple, you are a good teacher. Sorry for having to ask so much from you, you get learn in the process of helping us though. This requires a new open way of thinking which takes time to learn. Thanks again for your help.
Could you help me with this question. Most of the code is there.
http://www.experts-exchang
I though I did this right but it don't work, what did i do wrong?
private class AlarmButtonSelectAction extends javax.swing.AbstractAction
{
public final int HR = 0;
public final int MIN = 1;
int selected = -1;
public void actionPerformed(ActionEven
{
String cmd = e.getActionCommand();
if (currentMode == Mode.Alarm)
{
if (cmd.equals(hourButton.get
{
selected = HR;
}
else if (cmd.equals(minutesButton.
{
selected = MIN;
}
else if (cmd.equals(upButton.getTe
{
if (selected == HR)
{
String time = timeDisplay.getText();
int HR=Integer.parseInt(time);
HR = HR + 1;
timeDisplay.setText(time);
}
else if (selected == MIN)
{
String time = timeDisplay.getText();
int MIN=Integer.parseInt(time)
MIN = MIN + 1;
timeDisplay.setText(time);
}
}
else if (cmd.equals(downButton.get
{
if (selected == HR)
{
String time = timeDisplay.getText();
int HR=Integer.parseInt(time);
HR = HR - 1;
timeDisplay.setText(time);
}
else if (selected == MIN)
{
String time = timeDisplay.getText();
int MIN=Integer.parseInt(time)
MIN = MIN - 1;
timeDisplay.setText(time);
}
}
else if (cmd.equals(okButton.getTe
{
//time should be stored in alarmDisplay
alarmStarted = true;
alarmTime = timeDisplay.getText();
selected = -1;
}
}
}
}
that is totally WRONG!!!
the HR and MIN are indicators for what button has been selected (if Hour is selected, then selected = HR) I have made HR and MIN final - how are you changing it??
secondly, the 'time' String is in HH:MM:SS format. So Integer.parseInt(time) will throw a number format exception.
You need to split the time String into 3 parts : HH, MM and SS
then in the HR case, you increase the HH part and reconstruct the String to HH:MM:SS
it would be somthing like :
private class AlarmButtonSelectAction extends javax.swing.AbstractAction
{
public final int HR = 0;
public final int MIN = 1;
int selected = -1;
public void actionPerformed(ActionEven
{
String cmd = e.getActionCommand();
if (currentMode == Mode.Alarm)
{
if (cmd.equals(hourButton.get
{
selected = HR;
}
else if (cmd.equals(minutesButton.
{
selected = MIN;
}
else if (cmd.equals(upButton.getTe
{
if (selected == HR)
{
String time = timeDisplay.getText();
String[] splitTime = time.split(":");
int hr = Integer.parseInt(splitTime
time = Integer.toString(hr + 1) + ":" + splitTime[1] + ":" + splitTime[2];
timeDisplay.setText(time);
}
else if (selected == MIN)
{
String time = timeDisplay.getText();
String[] splitTime = time.split(":");
int min = Integer.parseInt(splitTime
time = splitTime[0] + ":" + Integer.toString(min + 1) + ":" + splitTime[2];
timeDisplay.setText(time);
}
}
else if (cmd.equals(downButton.get
{
if (selected == HR)
{
String time = timeDisplay.getText();
String[] splitTime = time.split(":");
int hr = Integer.parseInt(splitTime
time = Integer.toString(hr - 1) + ":" + splitTime[1] + ":" + splitTime[2];
timeDisplay.setText(time);
}
else if (selected == MIN)
{
String time = timeDisplay.getText();
String[] splitTime = time.split(":");
int min = Integer.parseInt(splitTime
time = splitTime[0] + ":" + Integer.toString(min - 1) + ":" + splitTime[2];
timeDisplay.setText(time);
}
}
else if (cmd.equals(okButton.getTe
{
//time should be stored in alarmDisplay
alarmStarted = true;
alarmTime = timeDisplay.getText();
selected = -1;
}
}
}
}
Replace and run
After that, you need to add checks to see that hr +1 and hr -1 rollover at 24 and 0 (24 hrs clock)
same for min - need to make sure it rolls over at 60 and hr gets incremented and so on...
String[] splitTime = time.split(":");
splitTime contains the hour, minute and second at position 0, 1 and 2 resp.
it works just fine :
Here is the complete code :
import java.awt.event.ActionEvent
import javax.swing.JLabel;
public class GuiPanel extends javax.swing.JFrame
{
enum Mode {
Alarm, Timer, Clock, Date, Audio
};
private java.util.List<Mode> modes;
private int modeIndex;
private Mode currentMode;
boolean alarmStarted = false;
public String alarmTime;
// private/** Creates new form GuiPanel */
public GuiPanel()
{
initComponents();
initModes();
}
private void initModes()
{
modes = new java.util.ArrayList<Mode>(
for (Mode m : Mode.values())
{
modes.add(m);
}
modeButton.setAction(new AdvanceModeAction("Mode"))
}
private class AdvanceModeAction extends javax.swing.AbstractAction
{
public AdvanceModeAction(String name)
{
super(name);
}
public void actionPerformed(java.awt.e
{
advanceMode();
modeDisplay.setText(curren
enableAllButtons();
if (currentMode == Mode.Alarm)
{
recordButton.setEnabled(fa
playButton.setEnabled(fals
stopButton.setEnabled(fals
fastButton.setEnabled(fals
alarmTempDisplay = new JLabel(timeDisplay.getText
alarmStarted = false;
dispProv.setDispListener(a
}
else if (currentMode == Mode.Audio)
{
hourButton.setEnabled(fals
minutesButton.setEnabled(f
}
else if (currentMode == Mode.Clock)
{
recordButton.setEnabled(fa
playButton.setEnabled(fals
stopButton.setEnabled(fals
}
else if (currentMode == Mode.Date)
{
recordButton.setEnabled(fa
playButton.setEnabled(fals
stopButton.setEnabled(fals
}
else if (currentMode == Mode.Timer)
{
recordButton.setEnabled(fa
playButton.setEnabled(fals
stopButton.setEnabled(fals
dispProv.setDispListener(t
}
}
}
private class AlarmButtonSelectAction extends javax.swing.AbstractAction
{
public final int HR = 0;
public final int MIN = 1;
int selected = -1;
public void actionPerformed(ActionEven
{
String cmd = e.getActionCommand();
if (currentMode == Mode.Alarm)
{
if (cmd.equals(hourButton.get
{
selected = HR;
}
else if (cmd.equals(minutesButton.
{
selected = MIN;
}
else if (cmd.equals(upButton.getTe
{
if (selected == HR)
{
String time = timeDisplay.getText();
String[] splitTime = time.split(":");
int hr = Integer.parseInt(splitTime
time = Integer.toString(hr + 1) + ":" + splitTime[1] + ":" + splitTime[2];
timeDisplay.setText(time);
}
else if (selected == MIN)
{
String time = timeDisplay.getText();
String[] splitTime = time.split(":");
int min = Integer.parseInt(splitTime
time = splitTime[0] + ":" + Integer.toString(min + 1) + ":" + splitTime[2];
timeDisplay.setText(time);
}
}
else if (cmd.equals(downButton.get
{
if (selected == HR)
{
String time = timeDisplay.getText();
String[] splitTime = time.split(":");
int hr = Integer.parseInt(splitTime
time = Integer.toString(hr - 1) + ":" + splitTime[1] + ":" + splitTime[2];
timeDisplay.setText(time);
}
else if (selected == MIN)
{
String time = timeDisplay.getText();
String[] splitTime = time.split(":");
int min = Integer.parseInt(splitTime
time = splitTime[0] + ":" + Integer.toString(min - 1) + ":" + splitTime[2];
timeDisplay.setText(time);
}
}
else if (cmd.equals(okButton.getTe
{
//time should be stored in alarmDisplay
alarmStarted = true;
alarmTime = timeDisplay.getText();
selected = -1;
}
}
}
}
private void enableAllButtons()
{
downButton.setEnabled(true
fastButton.setEnabled(true
hourButton.setEnabled(true
minutesButton.setEnabled(t
modeButton.setEnabled(true
okButton.setEnabled(true);
playButton.setEnabled(true
recordButton.setEnabled(tr
stopButton.setEnabled(true
upButton.setEnabled(true);
}
private void advanceMode()
{
currentMode = modes.get(modeIndex++ % modes.size());
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
private void initComponents()
{
jPanel1 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
timeDisplay = new javax.swing.JLabel();
jPanel2 = new javax.swing.JPanel();
modeDisplay = new javax.swing.JTextField();
jPanel3 = new javax.swing.JPanel();
modeButton = new javax.swing.JButton();
okButton = new javax.swing.JButton();
hourButton = new javax.swing.JButton();
minutesButton = new javax.swing.JButton();
recordButton = new javax.swing.JButton();
playButton = new javax.swing.JButton();
fastButton = new javax.swing.JButton();
stopButton = new javax.swing.JButton();
upButton = new javax.swing.JButton();
downButton = new javax.swing.JButton();
AlarmButtonSelectAction alarmButtonSelectAction = new AlarmButtonSelectAction();
setDefaultCloseOperation(j
setResizable(false);
jPanel1.setBackground(new java.awt.Color(255, 255, 255));
jLabel1.setFont(new java.awt.Font("Tahoma", 2, 18));
jLabel1.setForeground(new java.awt.Color(51, 51, 255));
jLabel1.setHorizontalAlign
jLabel1.setText("Audio Reminder Panel");
timeDisplay.setFont(new java.awt.Font("Tahoma", 0, 36));
timeDisplay.setForeground(
timeDisplay.setHorizontalA
timeDisplay.setText("00:00
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jP
jPanel1.setLayout(jPanel1L
jPanel1Layout.setHorizonta
jPanel1Layout.setVerticalG
jPanel2.setBackground(new java.awt.Color(0, 0, 0));
modeDisplay.setBackground(
modeDisplay.setEditable(fa
modeDisplay.setFont(new java.awt.Font("Tahoma", 1, 12));
modeDisplay.setHorizontalA
javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jP
jPanel2.setLayout(jPanel2L
jPanel2Layout.setHorizonta
jPanel2Layout.setVerticalG
jPanel3.setBackground(new java.awt.Color(255, 255, 255));
modeButton.setBackground(n
modeButton.setFont(new java.awt.Font("Tahoma", 1, 11));
modeButton.setForeground(n
modeButton.setText("Mode")
modeButton.addActionListen
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
okButton.setBackground(new
okButton.setFont(new java.awt.Font("Tahoma", 1, 11));
okButton.setForeground(new
okButton.setText("OK");
okButton.addActionListener
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
okButton.addActionListener
hourButton.setBackground(n
hourButton.setFont(new java.awt.Font("Tahoma", 1, 11));
hourButton.setForeground(n
hourButton.setText("Hour")
hourButton.addActionListen
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
hourButton.addActionListen
minutesButton.setBackgroun
minutesButton.setFont(new java.awt.Font("Tahoma", 1, 11));
minutesButton.setForegroun
minutesButton.setText("Min
minutesButton.addActionLis
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
minutesButton.addActionLis
recordButton.setBackground
recordButton.setFont(new java.awt.Font("Tahoma", 1, 11));
recordButton.setForeground
recordButton.setText("Reco
recordButton.addActionList
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
playButton.setBackground(n
playButton.setFont(new java.awt.Font("Tahoma", 1, 11));
playButton.setForeground(n
playButton.setText("Play")
playButton.addActionListen
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
fastButton.setBackground(n
fastButton.setFont(new java.awt.Font("Tahoma", 1, 11));
fastButton.setForeground(n
fastButton.setText("Fast")
fastButton.addActionListen
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
stopButton.setBackground(n
stopButton.setFont(new java.awt.Font("Tahoma", 1, 11));
stopButton.setForeground(n
stopButton.setText("Stop")
stopButton.addActionListen
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
upButton.setBackground(new
upButton.setFont(new java.awt.Font("Tahoma", 1, 11));
upButton.setForeground(new
upButton.setText("Up");
upButton.addActionListener
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
upButton.addActionListener
downButton.setBackground(n
downButton.setFont(new java.awt.Font("Tahoma", 1, 11));
downButton.setForeground(n
downButton.setText("Down")
downButton.addActionListen
{
public void actionPerformed(java.awt.e
{
event(evt);
}
});
downButton.addActionListen
javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jP
jPanel3.setLayout(jPanel3L
jPanel3Layout.setHorizonta
jPanel3Layout.linkSize(jav
jPanel3Layout.setVerticalG
jPanel3Layout.linkSize(jav
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(ge
getContentPane().setLayout
layout.setHorizontalGroup(
layout.setVerticalGroup(la
pack();
}// </editor-fold>
private void event(java.awt.event.Actio
{
// TODO add your handling code here:
}
/**
* @param args the command line arguments
*/
public static void main(String args[])
{
java.awt.EventQueue.invoke
{
public void run()
{
new GuiPanel().setVisible(true
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton downButton;
private javax.swing.JButton fastButton;
private javax.swing.JButton hourButton;
private javax.swing.JLabel jLabel1;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JButton minutesButton;
private javax.swing.JButton modeButton;
private javax.swing.JTextField modeDisplay;
private javax.swing.JButton okButton;
private javax.swing.JButton playButton;
private javax.swing.JButton recordButton;
private javax.swing.JButton stopButton;
private javax.swing.JLabel timeDisplay;
private javax.swing.JButton upButton;
private JLabel alarmTempDisplay;
// End of variables declaration
public javax.swing.JLabel getTimeDisplay()
{
return timeDisplay;
}
public void setTimeDisplay(javax.swing
{
this.timeDisplay = timeDisplay;
}
/**
* @param prn
*/
public void setDispProvider(DispTime prn)
{
dispProv = prn;
}
private DispTime dispProv;
}
import java.util.Calendar;
import java.util.Formatter;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class DispTime extends JFrame implements Runnable
{
Calendar calendar;
int i;
JTextField time;
Thread t;
DispTime()
{
time = new JTextField();
time.setEditable(false);
t = new Thread(this);
t.start();
}
public void run()
{
String s;
while (true)
{
Calendar c = Calendar.getInstance();
StringBuilder builder = new StringBuilder();
Formatter formatter = new Formatter(builder);
formatter.format("%02d:%02
formatter.flush();
s = builder.toString();
try
{
t.sleep(1000);
}
catch (Exception e)
{
}
time.setText(" " + s);
listenerTF.setText(time.ge
}
}
public static void main(String[] args)
{
final DispTime PRN = new DispTime();
final GuiPanel gp = new GuiPanel();
PRN.setDispListener(gp.get
gp.setDispProvider(PRN);
java.awt.EventQueue.invoke
{
public void run()
{
gp.setVisible(true);
}
});
}
/**
* @param timeDisplay
*/
public void setDispListener(JLabel timeDisplay)
{
this.listenerTF = timeDisplay;
}
private JLabel listenerTF;
}
if you remember, to run it you need to run the main of DispTime, and hte above code was to be put in GuiPanel
i have answered this in
http://www.experts-exchang
Business Accounts
Answer for Membership
by: StillUnAwarePosted on 2007-07-08 at 03:15:07ID: 19439611
Here is a little sample, which will do what You want:
(JFrame.EX IT_ON_CLOS E); r, "yyyy.MM.dd"));
import javax.swing.*;
public class DateSpinner {
public static void main(String args[]) {
JFrame f = new JFrame();
f.setDefaultCloseOperation
JSpinner spinner = new JSpinner(new SpinnerDateModel());
spinner.setEditor(new JSpinner.DateEditor(spinne
f.add(spinner);
f.pack();
f.setVisible(true);
}
}
Of course there are a lot more options.