Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    12

    Problema con visible e non visible ScrollPane

    Ciao a tutti ragazzi..
    Ho un problemino con due scrollpanel...
    Ho strutturato il mio panel facendo in modo che in base al CheckBox selezionato viene visualizzato un determinato jscrollpanel.
    Ma il fatto è che una volta cambiato il checkbox lo scrollpane visibile scompare ma nn compare lo scrollpane che si dovrebbe visualizzare.
    Sapete il motivo?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Problema con visible e non visible ScrollPane

    Originariamente inviato da robn
    Ho strutturato il mio panel facendo in modo che in base al CheckBox selezionato viene visualizzato un determinato jscrollpanel.
    Ma il fatto è che una volta cambiato il checkbox lo scrollpane visibile scompare ma nn compare lo scrollpane che si dovrebbe visualizzare.
    Sapete il motivo?
    Senza vedere il codice che hai scritto, sarebbe più facile vincere al lotto .....
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    12
    codice:
    archi= new myRadioButton(textBlock.getString("archi"));
    		vertici= new myRadioButton(textBlock.getString("vertici"));
    		sceltainiziale= new ButtonGroup();
    		sceltainiziale.add(archi);
    		sceltainiziale.add(vertici);
    		archi.setSelected(true);
    
    		this.add(archi,BorderLayout.NORTH);
    		this.add(vertici,BorderLayout.NORTH);
        	
        	scrolledge= new JScrollPane(ep);
        	scrolledge.setPreferredSize(new Dimension(380,360));
        	scrolledge.setVisible(false);
        	
        	scrollvertici= new JScrollPane(vp);
        	scrollvertici.setPreferredSize(new Dimension(380,360));
        	scrollvertici.setVisible(false);
        	
        	
        	add(scrolledge);
        	add(scrollvertici);
    		
    		
    		
    
    		if(archi.isSelected()){
    			
    			scrolledge.setVisible(true);
    			scrollvertici.setVisible(false);
    		
    		}else{
    			
    			scrolledge.setVisible(false);
    			scrollvertici.setVisible(true);
    			
    		}
    			
    		
    
    		archi.addActionListener(this);
    		vertici.addActionListener(this);
    		
    		
        }
    	
    	public void actionPerformed(ActionEvent e) {
    
    		if(archi.isSelected()){
    		
    			scrolledge.setVisible(true);
    			scrollvertici.setVisible(false);
    			
    
    		}
    
    		if(vertici.isSelected()){
    			
    			scrolledge.setVisible(false);
    			scrollvertici.setVisible(true);
    			
    			
    
    		}
    
    	}

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da robn
    codice:
        	add(scrolledge);
        	add(scrollvertici);
    Deduco che stai usando BorderLayout e che questi JScrollPane devono essere nella parte CENTER.
    Come hai fatto queste 2 add, sono equivalenti a fare add(xyz, BorderLayout.CENTER) ma nella parte CENTER ci va sempre e solo 1 componente .... l'ultimo che hai inserito!
    Quindi l'unico che vedresti è scrollvertici.


    P.S. se ci ragioni, vedi poi che non serve fare gli if per attivare uno o l'altro. isSelected() ti dà un boolean .... e questo puoi già usarlo nel setVisibile()!!!
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    12
    c'è un modo per far si che una volta cambiato checkbox lo scroll pane che è attualmente visibile scomparisca mentre lo scrollpane non visibile comparisca??

    Devo cambiare tipologia di layout?

    P.S.: GRAZIE INFINITE PER TUTTE LE TUE RISPOSTE!

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da robn
    c'è un modo per far si che una volta cambiato checkbox lo scroll pane che è attualmente visibile scomparisca mentre lo scrollpane non visibile comparisca??
    Lo ripeto meglio: in BorderLayout hai 5 aree. In ognuna ci può stare solo 1 componente e basta.

    Se tu facessi es.:
    add(c1, BorderLayout.SOUTH);
    add(c2, BorderLayout.SOUTH);
    add(c3, BorderLayout.SOUTH);

    Non vedi certo 3 componenti nella parte SOUTH e tantomeno puoi "switchare" da uno all'altro giocando solo sulla visibilità ... perché nella parte SOUTH ce ne è finito solo 1 di componente, l'ultimo inserito c3.

    Originariamente inviato da robn
    Devo cambiare tipologia di layout?
    Nella parte CENTER metti un JPanel che ha un CardLayout (vedi tutorial e documentazione), inserisci i due scroll pane nel pannello e poi usa show() sul CardLayout per cambiare componente.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.