Bounded Range Model

Chuck

Mitglied
Hallo,

ich hätte eine Frage zum Bounded Range Model.
Habe ein Programm geschrieben, bei dem 3 Jlists nebeneinander zu sehen sind. Die sollten alle gleichzeitig scrollen. Nach ein google recherche bin ich schließlich hierauf gestoßen
http://www.java-forum.org/awt-swing-javafx-swt/77153-drei-scrollpanes-gleichzeitig-scrollen.html

Das hat auch perfekt funktioniert!! Jedoch gibt ein kleines Problem.. Und zwar wird bei mir die DRITTE JList gelegentlich ein und wieder ausgeblendet. Das heißt, mal sollen nur zwei Jlist gleichzeitig scrollen und mal alle drei gleichzeitig.

Das Programm beginnt damit, dass die ersten Zwei Listen zu sehen sind, und sie scrollen auch gleichzeitig. Wenn ich jetzt in einer Checkbox etwas auswähle wird die dritte Liste hinzugefügt. Auch hier scrollen wieder alle drei Liste gleichzeitig!

Jetzt kommt das Problem. Beim nächsten Schritt wird die Dritte List wieder ausgeblendet. Wenn das allerdings passiert, kann man gar keine Liste mehr scrollen. Meine Vermutung wäre also, dass man den Code im IF Zweig (siehe Code) wieder rückgängig machen muss(und zwar im ELSE Zweig darunter). Leider hat es bei mir nach vielen Versuchen immer noch nciht funktioniert. Hätte jemand eine Idee?

Java:
public class Eingabefenster extends JFrame {

	
	private static BoundedRangeModel scrollModel;
	private static JPanel contentPane;

		

	public static void main(String[] args) {
		
		contentPane = new JPanel(new GridLayout(1, 3));
		
		scrollPaneA = new JScrollPane();
		scrollPaneA.setBounds(10, 140, 50, 345);
    	scrollPaneA.setViewportView(listID);        	
		
		scrollPaneB = new JScrollPane();
		scrollPaneB.setBounds(60, 140, 285, 345);
    	scrollPaneB.setViewportView(listError);  
        	
    	scrollPaneC = new JScrollPane();
		scrollPaneC.setBounds(345, 140, 285, 345);
    	scrollPaneC.setViewportView(listErrorEN);     	
    	
    	contentPane.add(scrollPaneC);
    	contentPane.add(scrollPane);
    	contentPane.add(scrollPaneB);    	
    	 
    	// Hier werden die ersten beiden Listen hinzugefügt, damit sie gleichzeitig scrollen!    	
    	scrollModel = scrollPaneA.getVerticalScrollBar().getModel();
    	scrollPaneB.getVerticalScrollBar().setModel(scrollModel);
    	// und die Scrollleiste von Liste A wird unsichtbar gemacht
    	scrollPaneA.getVerticalScrollBar().setPreferredSize(new Dimension(0, 0));
    	
    	final JFrame f = new JFrame("Fehlereingabe");
    	f.setContentPane(contentPane);
		f.setLayout(new BorderLayout());
		f.setSize(660, 535);
		f.setDefaultCloseOperation(EXIT_ON_CLOSE);	
		f.setLocationRelativeTo(null);
		f.setVisible(true);
		
		
	}
	
	public static class ThirdList implements ActionListener {
		@Override
		public void actionPerformed(ActionEvent arg0) {			
		
					
				
				if (selB == 0){
					// Hier wird die dritte Liste eingeblendet
					// Die dritte Liste wird hinzugefügt, damit alle gleichzeitig scrollen!
					scrollPaneC.getVerticalScrollBar().setModel(scrollModel);	
					// Die Scrollleiste der zweite Liste wird unsichtbar gemacht!
					scrollPaneB.getVerticalScrollBar().setPreferredSize(new Dimension(0, 0));					
					
				} else {
					// Wenn man hier drauf klickt(ist eine CheckBox), wird die 
					// dritte Liste wieder ausgeblendet! 
					
					// Die ZWEITE Scrolleiste (ScrollPaneB) soll also wieder sichtbar gemacht werden und
					// ScrollPaneC soll aus dem BoundedRangeModel rausgenommen werden!
	
				}
		}
	}
 

Chuck

Mitglied
Vielleicht habe ich es ein wenig umständlich formuliert. Ich will eig nur diese beiden Zeilen Code wieder rückgängig machen:

Hier mache ich die Scollleiste scrollPaneB unsichtbar, ich will sie also wieder sichtbar machen!
Java:
 scrollPaneB.getVerticalScrollBar().setPreferredSize(new Dimension(0, 0));

Hier füge ich die SCrollleiste scrollPaneC hinzu, damit alles gleichzeitig scrollt.
Java:
 scrollPaneC.getVerticalScrollBar().setModel(scrollModel);


Das Model scrollModel kommt von hier:
Java:
 BoundedRangeModel scrollModel = scrollPaneA.getVerticalScrollBar().getModel();

Irgendeine Idee, wie man diese beiden Zeilen Code wieder zurücksetzen kann?
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
2 Verständnisproblem bei Anwendung von Lower Bounded Wildcards Java Basics - Anfänger-Themen 5
E Erste Schritte Lower Bounded Wildcards <? super Integer> Java Basics - Anfänger-Themen 1
J Bounded Typvariablen Java Basics - Anfänger-Themen 2
S String index out of range Java Basics - Anfänger-Themen 11
B Datum in dieser Range SQL? Java Basics - Anfänger-Themen 3
R String index out of range: -1 beim Datei Parsen Java Basics - Anfänger-Themen 15
P String index out of range Java Basics - Anfänger-Themen 12
M Index out of range Java Basics - Anfänger-Themen 10
I String index out of range Fehlermeldung Java Basics - Anfänger-Themen 4
D " Column Index out of range, 6 > 5." Java Basics - Anfänger-Themen 8
J Datentypen Literal überschreitet long-Range, dennoch als long an Variable übergeben Java Basics - Anfänger-Themen 9
K Regex: illegal character range Java Basics - Anfänger-Themen 4
Z Erste Schritte String index out of range Java Basics - Anfänger-Themen 2
S string index out of range - es ergibt keinen Sinn Java Basics - Anfänger-Themen 6
Ö Frage zu String index out of range: -1 Java Basics - Anfänger-Themen 12
S Substring - String index out of range Java Basics - Anfänger-Themen 11
S String index out of range: 8 at java.lang.String.substring(Unknown Source) Java Basics - Anfänger-Themen 13
H String index out of range: 0 Java Basics - Anfänger-Themen 4
StupidAttack Fehler: String index out of range:7 Java Basics - Anfänger-Themen 10
S Fehlermeldung String index out of range?? Java Basics - Anfänger-Themen 3
F Range für new JFormattedTextField möglich? Java Basics - Anfänger-Themen 2
richis-fragen JTable den angezeigten WERT nicht den Wert aus dem Model ausgeben. Java Basics - Anfänger-Themen 3
richis-fragen JTable effektiv angezeigter Text ausgeben nicht Inhalt vom Model Java Basics - Anfänger-Themen 9
G Model View Controller Java Basics - Anfänger-Themen 7
S Model View Controller: Verständnisproblem Java Basics - Anfänger-Themen 13
G Model mit Models füllen Java Basics - Anfänger-Themen 9
W Befüllung einer Tabelle mit Checkbox, Trennung GUI und Model Java Basics - Anfänger-Themen 5
Q MVC Verständnisproblem: Controller vs model.modelChanged() Java Basics - Anfänger-Themen 0
I Klassen Java Qt Model/View Datenhaltung Java Basics - Anfänger-Themen 4
M Problem mit JTable und Model Java Basics - Anfänger-Themen 3
M Input/Output Vom Model zur Database? Java Basics - Anfänger-Themen 7
propra Wie mache ich einem JPanel mein bereits instanziertes Model bekannt Java Basics - Anfänger-Themen 9
F MVC: Model Klasse erstellen Java Basics - Anfänger-Themen 3
N local variable model is accessed from within inner class; needs to be declared final Java Basics - Anfänger-Themen 4
C OOP Model View Controller - Prinzip Java Basics - Anfänger-Themen 6
L Eigenes List Model für Icon + String -> Speicherhungrig? Java Basics - Anfänger-Themen 8
S Forumlare nach dem MVC-Model Java Basics - Anfänger-Themen 5
hdi Fehler beim Model-Update einer JList (DefaultListModel) Java Basics - Anfänger-Themen 3
hdi JList mit Model und Observer -> Chaos, blicke nicht durch Java Basics - Anfänger-Themen 22
K Model-View-Controller Java Basics - Anfänger-Themen 15
K Frage zum Model View Controller Prinzip Java Basics - Anfänger-Themen 6
K Problem mit Abstract Table Model Java Basics - Anfänger-Themen 5
G Einbindung von MVC (Model-View-Controll) Java Basics - Anfänger-Themen 8
megachucky Model View Controller Pattern - Suche Hilfe bei Anwendung Java Basics - Anfänger-Themen 4
C JTable Model - getValueAt (int) Java Basics - Anfänger-Themen 3
G JTable mit eigenen Model neu zeichnen Java Basics - Anfänger-Themen 4
L Model einer Table bekommen Java Basics - Anfänger-Themen 6
E Model und i18n bzw. Properties Java Basics - Anfänger-Themen 10
P Tabelle mit Model -> getSelectedRow Java Basics - Anfänger-Themen 4
S Model-View-Controller Konzept Beispiel Java Basics - Anfänger-Themen 11
M model übergeben? Java Basics - Anfänger-Themen 16

Ähnliche Java Themen

Neue Themen


Oben