•
•
•
•
What is DaniWeb IT Discussion Community?
You're currently browsing the Java section within the Software Development category of DaniWeb, a massive community of 401,473 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 3,046 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our Java advertiser: Lunarpages Java Web Hosting
Views: 250 | Replies: 0
![]() |
•
•
Join Date: Apr 2008
Posts: 2
Reputation:
Rep Power: 0
Solved Threads: 0
Ok, I'm stumped and asking for a push. I need help adding an instance variable for my timer in my frame class.
After that I need to :
Instantiate your timer. Pass in the initial time (in seconds) and a reference to your timer display JTextField object. This can be done when you declare the variable in the above step (ScoreboardTimer timer = new ScoreboardTimer(600, txtTimerDisplay)
.
I am confused.......
What I have so far: Timer
then my frame:
and finally my program/application:
I need to get my timer implemented into my program but I've gotten nada accompished in the past 2 hours. Any guidance is greatly appreciated.
Hurly
After that I need to :
Instantiate your timer. Pass in the initial time (in seconds) and a reference to your timer display JTextField object. This can be done when you declare the variable in the above step (ScoreboardTimer timer = new ScoreboardTimer(600, txtTimerDisplay)
.I am confused.......
What I have so far: Timer
import java.text.DecimalFormat;
import java.util.Timer;
import java.util.TimerTask;
import javax.swing.JTextField;
public class ScoreBoardTimer extends Thread
{
private boolean running = false;
private int counter = 600;
private JTextField timerDisplay = null;
public ScoreBoardTimer(int seconds, JTextField timerDisplay)
{
this.counter = seconds;
this.timerDisplay = timerDisplay;
}
public int getCounter()
{
return counter;
}
public void toggle()
{
running = !running;
}
public void run()
{
while (counter > 0)
{
DecimalFormat df = new DecimalFormat("00");
try
{
sleep(1000);
}
catch (InterruptedException e)
{
}
if (running)
{
counter--;
timerDisplay.setText((counter/60) + ":" + df.format(counter%60));
}
}
}
}then my frame:
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.GridBagLayout;
import java.awt.BorderLayout;
import javax.swing.JPanel;
import java.awt.Color;
import javax.swing.JTextField;
import java.awt.GridBagConstraints;
import java.awt.Insets;
import java.awt.Font;
import javax.swing.JLabel;
import javax.swing.JButton;
import javax.swing.*;
import java.text.*;
public class ScoreboardFrame extends JFrame
{
JMenuItem menuFileExit = new JMenuItem();
JMenu menuFile = new JMenu();
JMenuBar menuBar1 = new JMenuBar();
BorderLayout borderLayout1 = new BorderLayout();
JPanel panelScoreboard = new JPanel();
GridBagLayout gridBagLayout1 = new GridBagLayout();
JTextField txtHomeScore = new JTextField();
JLabel jLabel1 = new JLabel();
JLabel jLabel2 = new JLabel();
JTextField txtGuests = new JTextField();
JTextField txtTime = new JTextField();
JPanel panelButtons = new JPanel();
JButton btnTimeControl = new JButton();
JButton btnHomeAdd = new JButton();
JButton btnHomeSub = new JButton();
JButton btnGuestsAdd = new JButton();
JButton btnGuestsSub = new JButton();
DecimalFormat df = new DecimalFormat("00");
int homeScore = 0;
int guestsScore = 0;
public ScoreboardFrame()
{
try
{
jbInit();
}
catch(Exception e)
{
e.printStackTrace();
}
}
private void jbInit() throws Exception
{
this.setJMenuBar(menuBar1);
this.getContentPane().setLayout(borderLayout1);
this.setSize(new Dimension(534, 300));
this.setTitle("Basketball Scoreboard");
menuFile.setText("File");
panelScoreboard.setBackground(new Color(99, 82, 227));
panelScoreboard.setLayout(gridBagLayout1);
txtHomeScore.setText("00");
txtHomeScore.setPreferredSize(new Dimension(100, 75));
txtHomeScore.setFont(new Font("SansSerif", 1, 60));
txtHomeScore.setForeground(Color.red);
txtHomeScore.setEditable(false);
jLabel1.setText("Home");
jLabel1.setFont(new Font("Dialog", 1, 20));
jLabel1.setForeground(Color.white);
jLabel2.setText("Guests");
jLabel2.setForeground(Color.white);
jLabel2.setFont(new Font("Dialog", 1, 20));
txtGuests.setText("00");
txtGuests.setCaretColor(Color.red);
txtGuests.setForeground(Color.red);
txtGuests.setEditable(false);
txtGuests.setPreferredSize(new Dimension(100, 75));
txtGuests.setFont(new Font("SansSerif", 1, 60));
txtTime.setText("10:00");
txtTime.setFont(new Font("SansSerif", 1, 60));
txtTime.setForeground(Color.red);
txtTime.setEditable(false);
btnTimeControl.setText("Start/Stop");
btnTimeControl.setForeground(Color.red);
btnTimeControl.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
btnTimeControl_actionPerformed(e);
}
});
btnHomeAdd.setText("Home +");
btnHomeAdd.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
btnHomeAdd_actionPerformed(e);
}
});
btnHomeSub.setText("Home -");
btnHomeSub.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
btnHomeSub_actionPerformed(e);
}
});
btnGuestsAdd.setText("Guests +");
btnGuestsAdd.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
btnGuestsAdd_actionPerformed(e);
}
});
btnGuestsSub.setText("Guests -");
btnGuestsSub.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
btnGuestsSub_actionPerformed(e);
}
});
menuFileExit.setText("Exit");
menuFileExit.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent ae)
{
fileExit_ActionPerformed(ae);
}
});
menuFile.add(menuFileExit);
menuBar1.add(menuFile);
panelScoreboard.add(txtHomeScore, new GridBagConstraints(0, 1, 1, 1, 1.0, 1.0, GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(4, 4, 4, 4), 1, 1));
panelScoreboard.add(jLabel1, new GridBagConstraints(0, 0, 1, 1, 1.0, 1.0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(4, 4, 4, 4), 1, 1));
panelScoreboard.add(jLabel2, new GridBagConstraints(4, 0, 1, 1, 1.0, 1.0, GridBagConstraints.EAST, GridBagConstraints.NONE, new Insets(4, 4, 4, 4), 1, 1));
panelScoreboard.add(txtGuests, new GridBagConstraints(4, 1, 1, 1, 1.0, 1.0, GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(4, 4, 4, 4), 1, 1));
panelScoreboard.add(txtTime, new GridBagConstraints(3, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
this.getContentPane().add(panelScoreboard, BorderLayout.CENTER);
panelButtons.add(btnHomeAdd, null);
panelButtons.add(btnHomeSub, null);
panelButtons.add(btnTimeControl, null);
panelButtons.add(btnGuestsAdd, null);
panelButtons.add(btnGuestsSub, null);
this.getContentPane().add(panelButtons, BorderLayout.SOUTH);
}
void fileExit_ActionPerformed(ActionEvent e)
{
System.exit(0);
}
void btnTimeControl_actionPerformed(ActionEvent e)
{
}
void btnHomeAdd_actionPerformed(ActionEvent e)
{
homeScore++;
txtHomeScore.setText(df.format(homeScore));
}
void btnHomeSub_actionPerformed(ActionEvent e)
{
homeScore--;
txtHomeScore.setText(df.format(homeScore));
}
void btnGuestsAdd_actionPerformed(ActionEvent e)
{
guestsScore++;
txtGuests.setText(df.format(guestsScore));
}
void btnGuestsSub_actionPerformed(ActionEvent e)
{
guestsScore--;
txtGuests.setText(df.format(guestsScore));
}
}and finally my program/application:
import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.UIManager;
import java.awt.Dimension;
import java.awt.Toolkit;
public class ScoreboardApp
{
public ScoreboardApp()
{
Frame frame = new ScoreboardFrame();
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = frame.getSize();
if (frameSize.height > screenSize.height)
{
frameSize.height = screenSize.height;
}
if (frameSize.width > screenSize.width)
{
frameSize.width = screenSize.width;
}
frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);
frame.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
frame.setVisible(true);
}
public static void main(String[] args)
{
try
{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch(Exception e)
{
e.printStackTrace();
}
new ScoreboardApp();
}
}I need to get my timer implemented into my program but I've gotten nada accompished in the past 2 hours. Any guidance is greatly appreciated.
Hurly
![]() |
•
•
•
•
•
•
•
•
DaniWeb Java Marketplace
•
•
•
•
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
Other Threads in the Java Forum
- Previous Thread: Help With Painting in Swing
- Next Thread: Moving Walls in an Array


Linear Mode