codice:
.addGroup(pannelloLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(labelPassword)
                    .addComponent(password, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(9, 9, 9)
                .addGroup(pannelloLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(labelTelefono)
                    .addComponent(telefono, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(19, 19, 19))
        );

        labelTitle.setFont(new java.awt.Font("SansSerif", 1, 24)); // NOI18N
        labelTitle.setForeground(new java.awt.Color(0, 0, 255));
        labelTitle.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        labelTitle.setText("Ludeca Log-In Client");

        buttonLogin.setText("CONNETTI");
        buttonLogin.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                buttonLoginActionPerformed(evt);
            }
        });

        buttonLogout.setText("DISCONNETTI");
        buttonLogout.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                buttonLogoutActionPerformed(evt);
            }
        });

        buttonPausa.setText("PAUSA");
        buttonPausa.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                buttonPausaActionPerformed(evt);
            }
        });

        buttonRiprendi.setText("RIPRENDI");
        buttonRiprendi.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                buttonRiprendiActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(panelBottoni);
        panelBottoni.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(buttonLogin, javax.swing.GroupLayout.PREFERRED_SIZE, 97, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(buttonLogout, javax.swing.GroupLayout.DEFAULT_SIZE, 123, Short.MAX_VALUE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(buttonPausa, javax.swing.GroupLayout.PREFERRED_SIZE, 112, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(buttonRiprendi, javax.swing.GroupLayout.PREFERRED_SIZE, 112, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(8, 8, 8))
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(buttonLogin)
                    .addComponent(buttonLogout)
                    .addComponent(buttonPausa)
                    .addComponent(buttonRiprendi))
                .addGap(32, 32, 32))
        );

        status.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
        status.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        status.setText("Status Connesione");

        javax.swing.GroupLayout pannelloStatusLayout = new javax.swing.GroupLayout(pannelloStatus);
        pannelloStatus.setLayout(pannelloStatusLayout);
        pannelloStatusLayout.setHorizontalGroup(
            pannelloStatusLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(status, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
        );
        pannelloStatusLayout.setVerticalGroup(
            pannelloStatusLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pannelloStatusLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(status, javax.swing.GroupLayout.PREFERRED_SIZE, 51, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(labelTitle, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(pannelloStatus, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(panelBottoni, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(pannelloCronometro, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addContainerGap())))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addComponent(labelTitle)
                .addGap(18, 18, 18)
                .addComponent(pannelloCronometro, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(pannelloStatus, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(9, 9, 9)
                .addComponent(panelBottoni, javax.swing.GroupLayout.PREFERRED_SIZE, 38, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap())
        );

        pack();
    }// </editor-fold>

    private void buttonLoginActionPerformed(java.awt.event.ActionEvent evt) {
       /***************** 1 CONNESSIONE AL SERVER *******/
        try { 
            clientSocket = new Socket("192.168.42.176",9911);
            System.out.println("Connessione al Server in atto..."); 
            String loginOperatore = new String();
            loginOperatore=(username.getText()+password.getText()+telefono.getText());
            //apertura stream di input
            InputStreamReader isr=new InputStreamReader(clientSocket.getInputStream());
            BufferedReader in=new BufferedReader(isr);
                       
            //apertura stream di output
            OutputStreamWriter osw=new OutputStreamWriter(clientSocket.getOutputStream());
            BufferedWriter bw=new BufferedWriter(osw);
            PrintWriter out=new PrintWriter(bw,true);
        	               
            //invio della stringa al server
            out.println(loginOperatore.toString());
            status.setText("Connesso al Server, controllo la Login");
                        
            String confermaLogin = new String();
            System.out.println(confermaLogin=in.readLine());
            System.out.println("ciao----->"+(confermaLogin.toString()));
            if(confermaLogin.equals("OK"))
            {
                //if (clientSocket != null && out != null && in != null) 
                //{ 
                 Tempo tempo = new Tempo();
                 final Date data = tempo.dataCompleta;
		 startTime = System.currentTimeMillis();
		timer.start();
		buttonLogin.setEnabled(false);
		buttonLogout.setEnabled(true);       
		buttonPausa.setEnabled(true);
		status.setText("<html>Operatore Connesso in 
Data e Ora:
"+ data+"</html>");
		// }	 
            }
            else if (confermaLogin.equals("DATI_ERRATI"))
            {
                status.setText("ERRORE!!! Dati di Log-In Errata!!");
            }   
         } 
        catch (UnknownHostException err) 
	 {
		System.err.println("Errore: probelmi di comunicazione");
	} 
        catch (IOException err1)
        {
                 System.err.println("Errore: probelmi di comunicazione");
        }
    }

    private void buttonLogoutActionPerformed(java.awt.event.ActionEvent evt) {
         timer.stop();
         buttonPausa.setEnabled(false);
         buttonLogin.setEnabled (false);
         buttonLogout.setEnabled (true);
         buttonRiprendi.setEnabled (true);                    
         Tempo tempoPausa = new Tempo();
         final Date dataPausa = tempoPausa.dataCompleta;
         status.setText("<html>Operatore Disconnesso
Data e Ora:
"+ dataPausa+"</html>");
         
         try
         {
        	 in.close();
        	 out.close(); 
         clientSocket.close();
         }
         catch (UnknownHostException err) 
	 {
		System.err.println("Errore: probelmi di comunicazione");
	} 
        catch (IOException err1)
        {
                 System.err.println("Errore: probelmi di comunicazione");
        }
        
    }

    private void buttonPausaActionPerformed(java.awt.event.ActionEvent evt) {
                    timer.stop();
                    buttonPausa.setEnabled(false);
                    buttonLogin.setEnabled (false);
                    buttonLogout.setEnabled (true);
                    buttonRiprendi.setEnabled (true);                    
                    Tempo tempoPausa = new Tempo();
                    final Date dataPausa = tempoPausa.dataCompleta;
            		status.setText("<html>Operatore in Pausa
Data e Ora:
"+ dataPausa+"</html>");
    }

    private void buttonRiprendiActionPerformed(java.awt.event.ActionEvent evt) {
                    timer.restart();
                    buttonRiprendi.setEnabled (true);
                    buttonPausa.setEnabled(false);
                    buttonLogin.setEnabled(false);
    	            buttonLogout.setEnabled(true);       
    	            buttonPausa.setEnabled(true);
    	            Tempo tempoRipresa = new Tempo();
                    final Date dataRipresa = tempoRipresa.dataCompleta;
            	    status.setText("<html>Operatore in Pausa
Data e Ora:
"+ dataRipresa+"</html>");
    }

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tu...feel/plaf.html 
         */