Perfetto!
ti allego il codice, l'ho pulito un po' altrimenti non finiva più. Ho tolto tutte le action performed sui vari elementi del menù, la dichiarazione dei componenti e gli import.
Grazie
codice:
package interfacce;
public class main extends javax.swing.JFrame {
//public boolean run=false;
daemon di=new daemon("istantanei");
public boolean login=false;
/** Creates new form main */
public main() {
initComponents();
// Prendo le dimensioni del desktop
Dimension dim_schermo = Toolkit.getDefaultToolkit().getScreenSize();
// Calcolo la posizione orizzontale della finestra
int posX = (int) (dim_schermo.width - getWidth())/2;
// Calcolo la posizione verticale della finestra
int posY = (int) (dim_schermo.height - getHeight())/2;
// Posiziono la finestra
setLocation(posX, posY);
this.jButton3.setEnabled(false);
rigenera_login();
}
public void rigenera_login(){
if(!login){
this.jMenu1.setEnabled(false);
this.jMenu2.setEnabled(false);
this.jMenu3.setEnabled(false);
this.jButton1.setText("login");
this.jTextField1.setEditable(true);
this.jPasswordField1.setEditable(true);
this.jButton2.setVisible(false);
this.jButton3.setVisible(false);
}else{
this.jMenu1.setEnabled(true);
this.jMenu3.setEnabled(true);
this.jButton1.setText("logout");
this.jTextField1.setEditable(false);
this.jPasswordField1.setEditable(false);
this.jButton2.setVisible(true);
this.jButton3.setVisible(true);
rigenera_db();
}
}
public void rigenera(){
this.setEnabled(true);
}
public void rigenera_db(){
connection conn=new connection();
wait w =new wait();
w.repaint();
w.setVisible(true);
try {
this.setEnabled(false);
conn.dbConnect();
w.dispose();
this.setEnabled(true);
this.jMenu2.setEnabled(true);
} catch (JDOMException ex) {
this.jMenu2.setEnabled(false);
w.dispose();
this.setEnabled(true);
Logger.getLogger(main.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
this.jMenu2.setEnabled(false);
w.dispose();
this.setEnabled(true);
Logger.getLogger(main.class.getName()).log(Level.SEVERE, null, ex);
} catch (db_exception ex) {
this.jMenu2.setEnabled(false);
w.dispose();
this.setEnabled(true);
Logger.getLogger(main.class.getName()).log(Level.SEVERE, null, ex);
}
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
setTitle("Eldan DDE Server for PLC");
setIconImage(java.awt.Toolkit.getDefaultToolkit().getImage(this.getClass().getResource("logo.gif")));
jLabel1.setText("User");
jLabel2.setText("Password");
jButton1.setText("Login");
jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jButton1MousePressed(evt);
}
});
jButton2.setText("Avvia Server");
jButton2.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jButton2MousePressed(evt);
}
});
jButton3.setText("Ferma Server");
jButton3.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jButton3MousePressed(evt);
}
});
jMenu1.setText("File");
jMenuItem12.setText("Impostazioni");
jMenuItem12.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem12MousePressed(evt);
}
});
jMenu1.add(jMenuItem12);
jMenu1.add(jSeparator1);
jMenuItem15.setText("Reset Totalizzatore");
jMenuItem15.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem15MousePressed(evt);
}
});
jMenu1.add(jMenuItem15);
jMenuItem14.setText("Reset Temporizzatore");
jMenuItem14.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem14MousePressed(evt);
}
});
jMenu1.add(jMenuItem14);
jMenu1.add(jSeparator6);
jMenuItem3.setText("Esci");
jMenuItem3.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem3MousePressed(evt);
}
});
jMenu1.add(jMenuItem3);
jMenuBar1.add(jMenu1);
jMenu2.setText("Edit");
jMenuItem1.setText("Inserisci PLC");
jMenuItem1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem1MousePressed(evt);
}
});
jMenu2.add(jMenuItem1);
jMenuItem2.setText("Inserisci Sensore");
jMenuItem2.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem2MousePressed(evt);
}
});
jMenu2.add(jMenuItem2);
jMenu2.add(jSeparator5);
jMenuItem4.setText("Modifica PLC");
jMenuItem4.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem4MousePressed(evt);
}
});
jMenu2.add(jMenuItem4);
jMenuItem5.setText("Modifica Sensore");
jMenuItem5.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem5MousePressed(evt);
}
});
jMenu2.add(jMenuItem5);
jMenu2.add(jSeparator2);
jMenuItem6.setText("Elimina PLC");
jMenuItem6.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem6MousePressed(evt);
}
});
jMenu2.add(jMenuItem6);
jMenuItem7.setText("Elimina Sensore");
jMenuItem7.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem7MousePressed(evt);
}
});
jMenu2.add(jMenuItem7);
jMenu2.add(jSeparator4);
jMenuItem11.setText("Modifica login");
jMenuItem11.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem11MousePressed(evt);
}
});
jMenu2.add(jMenuItem11);
jMenuItem13.setText("Modifica timer");
jMenuItem13.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem13MousePressed(evt);
}
});
jMenu2.add(jMenuItem13);
jMenuBar1.add(jMenu2);
jMenu3.setText("Visualizza");
jMenuItem8.setText("PLC");
jMenuItem8.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem8MousePressed(evt);
}
});
jMenu3.add(jMenuItem8);
jMenuItem9.setText("Sensori");
jMenuItem9.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem9MousePressed(evt);
}
});
jMenu3.add(jMenuItem9);
jMenu3.add(jSeparator3);
jMenuItem10.setText("Stato Server");
jMenuItem10.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(java.awt.event.MouseEvent evt) {
jMenuItem10MousePressed(evt);
}
});
jMenu3.add(jMenuItem10);
jMenuBar1.add(jMenu3);
setJMenuBar(jMenuBar1);
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, false)
.addComponent(jTextField1, javax.swing.GroupLayout.DEFAULT_SIZE, 107, Short.MAX_VALUE)
.addComponent(jLabel1)
.addComponent(jLabel2)
.addComponent(jButton1)
.addComponent(jPasswordField1))
.addGap(131, 131, 131)
.addComponent(jButton2)
.addGap(18, 18, 18)
.addComponent(jButton3)
.addContainerGap(348, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(197, 197, 197)
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton2)
.addComponent(jButton3))
.addGap(18, 18, 18)
.addComponent(jLabel2)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPasswordField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(jButton1)
.addContainerGap(135, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new main().setVisible(true);
}
});
}
}