Cómo restablecer un temporizador en Java GUI y mostrar mensaje después de la parada -- java campo con swing campo con user-interface campo con timer camp Relacionados El problema

How To Reset a Timer in Java GUI and Display Message after Stop


1
vote

problema

Español

Hola buen día Quiero crear un "botón de reinicio" donde se restablecerá mi temporizador. Creé un botón nuevo y lo llamé como "reinicio" y yo uso el código "tm2.restart ();" Pero no funciona en mi nuevo botón creado. Este es mi código:

  import javax.swing.Timer; public class deploy extends JFrame {   private int seconds;  private SimpleDateFormat df;  private boolean isRunning;  private JLabel lblTimer1;  private JButton btnStart1;  public deploy() {  lblTimer1 = new JLabel("New label"); lblTimer1.setForeground(Color.WHITE); lblTimer1.setFont(new Font("Tahoma", Font.PLAIN, 20)); lblTimer1.setBounds(100, 231, 94, 16); contentPane.add(lblTimer1);   Timer tm2 = new Timer(1000, new ActionListener() {             @Override             public void actionPerformed(ActionEvent e) {                 setTimer();                 seconds++;             }         });  btnStart1 = new JButton("Start"); btnStart1.setBackground(Color.LIGHT_GRAY); btnStart1.setForeground(Color.BLUE); btnStart1.addActionListener(new ActionListener() {      @Override            public void actionPerformed(ActionEvent e) {                  if(isRunning) {                     tm2.stop();                     btnStart1.setText("Start");                 }else {                     tm2.start();                     btnStart1.setText("Stop");                 }                  isRunning = !isRunning;             }         });   

Mi tipo de temporizador está formateado como "simpledateFormat" (00:00:00) porque estoy creando una "aplicación de administración de Cybercafe" que el cliente entrará y registrará su tiempo hasta que él / ella desconecte y Muestra un mensaje la cantidad que será pagada. por favor ayuda. gracias

Original en ingles

Hello Good day i want to create a "Reset Button" where my Timer will reset. I created a new button and named it as "reset" and i use the code "tm2.restart();" but its not working in my created New Button. This is my code:

import javax.swing.Timer; public class deploy extends JFrame {   private int seconds;  private SimpleDateFormat df;  private boolean isRunning;  private JLabel lblTimer1;  private JButton btnStart1;  public deploy() {  lblTimer1 = new JLabel("New label"); lblTimer1.setForeground(Color.WHITE); lblTimer1.setFont(new Font("Tahoma", Font.PLAIN, 20)); lblTimer1.setBounds(100, 231, 94, 16); contentPane.add(lblTimer1);   Timer tm2 = new Timer(1000, new ActionListener() {             @Override             public void actionPerformed(ActionEvent e) {                 setTimer();                 seconds++;             }         });  btnStart1 = new JButton("Start"); btnStart1.setBackground(Color.LIGHT_GRAY); btnStart1.setForeground(Color.BLUE); btnStart1.addActionListener(new ActionListener() {      @Override            public void actionPerformed(ActionEvent e) {                  if(isRunning) {                     tm2.stop();                     btnStart1.setText("Start");                 }else {                     tm2.start();                     btnStart1.setText("Stop");                 }                  isRunning = !isRunning;             }         }); 

My kind of timer is formatted as "SimpleDateFormat" (00:00:00) because i'm creating a "cybercafe management application" that the customer will walk in and records his/her time until he/she logged out and display a message the amount he/she will be payed off. please help. thanks

           
         
         

Lista de respuestas

1
 
vote
vote
La mejor respuesta
 

Código de revisión y no dude en preguntar qué no está claro:

  timestamp in long millis6  
 

Review code and don't hesitate to ask what is unclear:

import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.text.SimpleDateFormat; import java.util.Date; import java.util.TimeZone; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.Timer; import javax.swing.border.EmptyBorder; public class Deploy extends JFrame {      private int seconds;     private SimpleDateFormat df;     private JLabel lblTimer;     private Timer timer;     private  JButton startButton;      public Deploy() {          JPanel contentPane = new JPanel();         contentPane.setBackground(Color.DARK_GRAY);         contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));         setContentPane(contentPane);         contentPane.setLayout(new BorderLayout());          lblTimer = new JLabel();         lblTimer.setForeground(Color.WHITE);         lblTimer.setFont(new Font("Tahoma", Font.PLAIN, 20));         lblTimer.setPreferredSize(new Dimension(100,30));         contentPane.add(lblTimer,BorderLayout.NORTH);          timer = new Timer(1000, new ActionListener() {             @Override             public void actionPerformed(ActionEvent e) {                 setTimer();                 seconds++;             }         });          JPanel buttonsPanel = new JPanel();         contentPane.add(buttonsPanel, BorderLayout.SOUTH);          startButton = new JButton("Start");         startButton.setBackground(Color.LIGHT_GRAY);         startButton.setForeground(Color.BLUE);         startButton.addActionListener(new ActionListener() {             @Override             public void actionPerformed(ActionEvent e) {                  if(timer.isRunning()) {                     timer.stop();                     startButton.setText("Start");                 }else {                     timer.start();                     startButton.setText("Stop");                 }             }         });          startButton.setPreferredSize(new Dimension(100,30));         buttonsPanel.add(startButton);          JButton resetButton = new JButton("Reset");         resetButton.setBackground(Color.LIGHT_GRAY);         resetButton.setForeground(Color.RED);         resetButton.addActionListener(new ActionListener() {              @Override             public void actionPerformed(ActionEvent e) {                 resetTimer();             }         });         resetButton.setPreferredSize(new Dimension(100,30));         buttonsPanel.add(resetButton);          df = new SimpleDateFormat("HH:mm:ss"); // HH for 0-23         df.setTimeZone(TimeZone.getTimeZone("GMT"));          resetTimer();         pack();         setVisible(true);     }      private void setTimer() {         Date d = new Date(seconds * 1000L);         String time = df.format(d);         lblTimer.setText(time);     }      private void resetTimer() {          if(timer.isRunning()) {             timer.stop();         }         startButton.setText("Start");         seconds = 0;         setTimer();     }      public static void main(String[] args) {         new Deploy();     } } 
 
 

Relacionados problema

100  ¿GetTiempo () está garantizado para ser de resolución de microsegundidad?  ( Is gettimeofday guaranteed to be of microsecond resolution ) 
Estoy portando de un juego, que originalmente se escribió para la API de Win32, a Linux (Bueno, portar el puerto OS X del puerto WIN32 a Linux). He implemen...

2  Pase los argumentos a una función retrasada con Haxe  ( Pass arguments to a delayed function with haxe ) 
¿Sabe si hay una manera fácil de pasar algunos argumentos a una función llamada VIA haxe.Timer.delay(func, delay); Por "Fácil", quiero decir sin crear ...

0  Objetivo C ¿Cómo hago un temporizador que cuenta desde dos minutos?  ( Objective c how do i make a timer that counts down from two minutes ) 
Busqué en Internet por una respuesta, pero sin suerte. Lo intenté - (void)viewDidLoad { [super viewDidLoad]; twoMinTimer = [NSTimer scheduledTimerWithTim...

16  Evento basado en temporizador desencadenantes  ( Timer based event triggers ) 
Actualmente estoy trabajando en un proyecto con requisitos específicos. Una breve descripción general de estos son los siguientes: Los datos se recuperan d...

20  Timer.ScheduledTimer no funciona en SWIFT 3  ( Timer scheduledtimer does not work in swift 3 ) 
Quiero llamar al método func adjustmentBestSongBpmHeartRate() cada 1.1 segundo. Usé el temporizador, pero no funciona. He leído el documento y encontré much...

0  ¿Cómo ejecutar JavaScript antes de System.web.ui.timer OnTick?  ( How to run javascript prior to system web ui timer ontick ) 
Necesito un script de lado de cliente para confirmar que el evento OnTick del temporizador puede continuar. ¿Cómo invoco cancontinue () antes de que ocurr...

0  C: Parte del código no se ejecuta en Seleccionar ()  ( C part of the code doesnt execute under select ) 
Tengo algo como esto: #define QUIT_TIME 5 int main(int argc, char **argv) { //... SOCKETS STUFF .... fdmax = parentfd; while (notdone) { ...

0  Horario de tareas periódicas a una duración fija después de un finalizado anteriormente en Java  ( Schedule periodic task at a fixed duration after previous one finished in java ) 
Escribí una aplicación que ejecuta un hilo periódicamente usando Timer.scheduleAtFixedRate como este: // -=> Container for activities: echo' <div id="con...

105  Temporizador confiable en una aplicación de consola  ( Reliable timer in a console application ) 
Soy consciente de que en .NET Hay tres tipos de temporizador (consulte Comparando las clases de temporizador en la biblioteca de clase de Framework ). H...

9  SharePoint: Ejecutando STSADM de un Temporizador Job + SharePoint Derechos del sistema  ( Sharepoint executing stsadm from a timer job sharepoint system rights ) 
Tengo una situación inusual en la que necesito un trabajo de temporizador de SharePoint para ambos privilegios de Windows de administrador local y tener 9988...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos