Ciao,
mi trovo alle prime armi... il mio principale problema è quello di non capire come far passare i valori di variabili tra una jFrame e una jDialog.
Nella jFrame è presente una jMenuItem (Accedi) che apre una jDialog e chiede il nome utente e la password, controlla se i dati inseriti sono corretti e nel caso in cui è giusto viene settata a true la variabile chiave che deve viene letta ogni qual volta che nella jFrame clicco su una jMenu.
il problema è che la variabile chiave è sempre settata a falso nonostante cambi il suo valore nella jDialog.


nella jFrame...
codice:
mnNewMenu.addMouseListener(new MouseAdapter() {			@Override
			public void mouseClicked(MouseEvent e) {
				Accedi accedi=new Accedi();
				chiave=accedi.isChiave();
				if(chiave==true){
					mntmEsci.setEnabled(true);
				}
			}
		});
codice:
public class Accedi extends JDialog {
public static final int RET_CANCEL = 0;    
    public static final int RET_OK = 1;
private boolean chiave=false;	private int returnStatus = RET_CANCEL;
	
	private void doClose(int retStatus) {
        returnStatus = retStatus;
        setVisible(false);
        this.dispose();
    }
	
	public int getReturnStatus() {
        return returnStatus;
    }
	
	public boolean isChiave() {
		return chiave;
	}


	public Accedi() {
JButton okButton = new JButton("OK");				okButton.addActionListener(new ActionListener() {
					@SuppressWarnings({ "deprecation", "resource" })
					public void actionPerformed(ActionEvent arg0) {
						doClose(RET_OK);
						String nomeU, password,riga,prova;
						try {
							Scanner tast = new Scanner(new FileReader("FileUtenti.txt"));
							nomeU=NU.getText();
							password=PS.getText();
							prova=nomeU+"&&"+password+"&&";
							
							while(tast.hasNext()){
								riga=tast.next();
								
								
								if(riga.equals(prova)){
									chiave=true;
								}
							}
							
							if(chiave==false){
								  JOptionPane.showMessageDialog(null,"Dati non corretti","Error",JOptionPane.ERROR_MESSAGE);
							}else{
								doClose(RET_OK);
							}
						
							
						} catch (FileNotFoundException e1) {
							e1.printStackTrace();
						}
					}
				});}
Grazie