Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Visibilità variabili in java

    Allora ragazzi il mio problema è:
    ho una variabile dichiarata nella mia classe con public String str="";

    all'interno del costruttore la vado a settare con l'opportuno metodo setStr(String nuova)...è sembri ke funzioni xke se immediatamente dopo sempre all'interno del costruttore vado a stamparla essa contiene il valore nuovo..
    ora il punto è ke quando si invoca il metodo actionPerformed dovuto alla pressione di un JButtom presente nel mio codice e vado a fare getStr() la varibile nn contiene più il nuovo valore ma è vuota cm l'avevo inizializzata!!! xke succede questo?????? all'interno del costruttore c'e l'ha il valore nuovo mentre fuori no xke???? devo renderla globale?????ma cm?in java nn so cm farlo in forse nn si può fare nemmeno nn lo so....Help Grazie...

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,477

    Moderazione

    Ho spostato la discussione nel forum dedicato a Java.
    In futuro, poni qui le tue domande relative a questo linguaggio.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Ok grazie...è la seconda volta ke utilizzo il forum nn sono esperta...cmq grazie 1000

  4. #4
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Se posti il codice magari capiamo qualcosa, ora non è molto chiaro :master:
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    143
    in effetti non è meglio se posti il codice ... così non si capisce un gran chè ...

  6. #6
    Si! xò è un codice di 1600 righe cmq ora vi sposto alcuni spezzoni ok...

    codice:
    public class Crea_Tavoli extends JFrame implements ActionListener{
    ***
    ***
    ***
    String str;
    Server ser;
    ***
    public Crea_Tavoli(int n,String cam){
    		
    		this.setIconImage(Toolkit.getDefaultToolkit().getImage(getClass().getResource("cameriere.gif")));
    
    try{
    			ser=(Server)Naming.lookup("rmi://localhost/ServerRemoto");
    			}
    			catch(Exception e){e.printStackTrace();
    			}
    			
    ****
    ***
    ***
    if(n==1){
    cnt = getContentPane();
    JPanel p6=new JPanel();
    setSize(400,450);	
    setTitle("Sala 1");
    
    
    p6.setLayout(new BoxLayout(p6,BoxLayout.PAGE_AXIS));
    p6.add(Box.createVerticalStrut(50));
    
    		uno=new JButton("Tavolo:"+1);
    		try{
    			
    			str=ser.getOrdine(1);
    			System.out.println(str);           //OK mi stampa i valori
    
    			if(str.equals("")){
    				uno.setBackground(c.GREEN);	
    			}
    			else{
    				uno.setBackground(c.red);	
    			}
    		}
    		catch(Exception e){e.printStackTrace();}
    			
    		uno.addActionListener(this);
    		p6.add(uno);
    ***
    ***
    ***
    cnt.add(BorderLayout.CENTER,p6);
    		}
    
    if(n==2){
    			cnt = getContentPane();
    ***
    ***
    ***
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);
    }//costruttore
    ***
    ***
    ***
    public String getStr() {
    		return this.str;
    	}
    	public void setStr(String str) {
    		this.str = str;
    	}
    
    String lista2[]=null;
    public void actionPerformed(ActionEvent e) {
    ***
    ***
    if(e.getSource()==uno){
    			
    			System.out.println(this.str+" "+this.getStr());       //Non stampa nulla
    			lista2=this.getStr().split("-");
    			System.out.println(lista2[2]+" "+lista2[3]);
    			
    			ClientOrdiniProp frame=new ClientOrdiniProp(3,nome);
    			frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    			this.setVisible(false);
    			frame.setVisible(true);
    			
    		}
    }
    Allora la sistem in actionPerformed lancia l'eccezzione NUllPointerException xke dice ke lista è vuota infatti se stampo getStr() nn mi dà nulla xò se la stampo nel costruttore si... spero ke mi aiutarete grazie....

  7. #7
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326

    Moderazione

    Visto che è la seconda volta che usi il forum, faccio notare che c'è un Regolamento interno fra le discussioni in rilievo, dove viene indicato (al punto 6) come si fa per postare il codice in modo leggibile.

    Sistemo io.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  8. #8
    Ok grazie di tutto ma stamattina a mente fresca sn riuscita a trovare la soluzione... praticamente nel costruttore faccio direttamente lo split e quindi in actionPerformed accedo a lista2 e nn a str.....scusatemi un bacione grande e grazie ancora

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.