wie Scrollen?

Status
Nicht offen für weitere Antworten.
Hallo zusammen,

ich brauch mal wieder Professionelle Hilfe. Das Layout und die Layout Manager machen mich als blutigen Anfänger fast verrückt.
Also ich ich habe eine Jframe erstellt auf dem Artikel angezeigt werden sollen (siehe Screenshot). Das habe ich so gemacht

Java:
public Artikel_show(ArtikelList list)
	{
		menue = new JFrame("Artikel anzeigen");
		menue.setSize(850,400);
		menue.setVisible(true);
		menue.setLocationRelativeTo(null);
		menue.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
		menue.setLayout(null);
		
		header = new JLabel("Artikelübersicht");
		name = new JLabel("Name");
		umsatz = new JLabel("Umsatz");
		verkauft = new JLabel("Verkauft");
		preis = new JLabel("Preis");
		menge = new JLabel("Menge");
		guv = new JLabel("GuV");
		epreis = new JLabel("Einkaufspreis");
		
		header.setBounds(30,30,100,15);
		name.setBounds(30,50,200,15);
		menge.setBounds(250,50,100,15);
		preis.setBounds(350,50,120,15);
		verkauft.setBounds(430,50,120,15);
		umsatz.setBounds(540,50,120,15);
		guv.setBounds(640,50,120,15);
		epreis.setBounds(730,50,100,15);
		
		menue.add(header);
		menue.add(name);
		menue.add(preis);
		menue.add(verkauft);
		menue.add(menge);
		menue.add(umsatz);
		menue.add(guv);
		menue.add(epreis);
		
		i = list.getAnzahl();	
		
		show(list);
	}
	
	public void show(ArtikelList list)
	{
		int j = 0;
		int y = 70;
		
		try
		{
			for(j=0;j<list.getAnzahl();j++)
			{
				
				//Name
				JLabel name = new JLabel();
				name.setText(list.getName(j));
				name.setBounds(30,y,200,30);
				menue.add(name);
			
				//Menge
				JLabel menge = new JLabel();
				menge.setText(""+list.getMenge(j));
				menge.setBounds(250,y,50,30);
				menue.add(menge);
			
				//Verkaufspreis
				JLabel preis = new JLabel();
				preis.setText(""+df.format(list.getPreis(j)));
				preis.setBounds(350,y,70,30);
				menue.add(preis);
			
				//Verkauft
				JLabel verkauft = new JLabel();
				verkauft.setText(""+list.getVerkauft(j));
				verkauft.setBounds(430,y,50,30);
				menue.add(verkauft);
			
				//Umsatz
				JLabel umsatz = new JLabel();
				umsatz.setText(""+df.format(list.getUmsatz(j)));
				umsatz.setBounds(540,y,70,30);
				menue.add(umsatz);
			
				//Gewinn und Verlust
				JLabel guv = new JLabel();
				guv.setText(""+df.format(list.getGuv(j)));
				guv.setBounds(640,y,70,30);
				menue.add(guv);
			
				//Einkaufspreis
				JLabel ePreis = new JLabel();
				ePreis.setText(""+df.format(list.getAufwendungen(j)));
				ePreis.setBounds(730,y,70,30);
				menue.add(ePreis);
			
				//Erhöhung des Werts y zur Positionierung auf der y-Achse
				y+=20;			
			}
		}
		catch(NullPointerException e)
		{
			
		}
	}	
}

Jetzt habe ich das Problem das ich es nicht schaffe dem Ding beizubringen das es nach unten scrollen soll wenn genug Einträge vorhanden sind. Wie macht man das? Ich habe bereits mit den Layout Managern gespielt aber bis jetzt nichts erreicht.
 
Ich bin inzwischen drauf gekommen und hab es so gelöst.

Java:
public Artikel_show(ArtikelList list)
	{
		//Frame Werte setzen Name, Programmende beim schließen, 
		//Grösse, Sichtbarkeit, Fenster zentriert
		menue = new JFrame("Artikel anzeigen");
		menue.setSize(850,400);
		menue.setVisible(true);
		menue.setLocationRelativeTo(null);
		menue.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
		menue.setLayout(new GridLayout(0,1,10,10));
		
		//Erzeugen der Label für die Überschrift und die Titelleiste
		header = new JLabel("Artikelübersicht");
		name = new JLabel("Name");
		umsatz = new JLabel("Umsatz");
		verkauft = new JLabel("Verkauft");
		preis = new JLabel("Preis");
		menge = new JLabel("Menge");
		guv = new JLabel("GuV");
		epreis = new JLabel("Einkaufspreis");
		
		spalten = 7;
		zeilen = list.getAnzahl();
		rowData = new String[zeilen][spalten];
		fillRowData(list);
		tabel = new JTable(rowData,columnData);
		menue.add(new JScrollPane(tabel));
		tabel.setRowHeight(50);
	}
	
	/**
	 * Füllt den String für die Tabellen Daten
	 * 
	 * @param list
	 */
	public void fillRowData(ArtikelList list)
	{
		for(int i=0;i<list.getAnzahl();i++)
		{
			int j = 0;
			
			rowData[i][j] = list.getName(i);
			rowData[i][++j] = ""+list.getMenge(i);
			rowData[i][++j] = ""+df.format(list.getVerkauft(i));
			rowData[i][++j] = ""+df.format(list.getPreis(i));
			rowData[i][++j] = ""+df.format(list.getUmsatz(i));
			rowData[i][++j] = ""+df.format(list.getGuv(i));
			rowData[i][++j] = ""+df.format(list.getAufwendungen(i));
		}
	}
}
 

Marco13

Top Contributor
OK, dann noch was hinterher ;) : Diese ArtikelList sieht ... ungewöhnlich aus. (Nicht, dass das grundsätzlich schlecht wäre, aber ... ) In manchen Bereichen (nämlich "hardwarenahe", "low-level"-Parallelprogrammierung) kann eine "Structure Of Arrays" gut sein, aber üblicherweise verwendet man eher einen "Array Of Structures". In diesem konkreten Fall heißt das, dass eine AktikelList in dieser Form nicht so günstig ist:
Code:
class ArtikelList
{
    String getName(int i) { ... }
    int getAnzahl(int i) { ... }
    float getPreis(int i) { ... }
}
Stattdessen sollte es eine Klasse (oder ein Interface) "Artikel" geben:
Code:
class Artikel
{
    String getName() { ... }
    int getAnzahl() { ... }
    float getPreis() { ... }
}

Und davon sollte man dann eine Liste anlegen - das braucht dann keine eigene Klasse mehr zu sein, sondern wäre einfach nur noch eine
List<Artikel> artikelList = new ArrayList<Artikel>();

Mit der "ArtikelList" kommt man u.U. in Schwierigkeiten. Wenn du jetzt diese ArtikelList z.B. nach dem Namen des Artikels alphabetisch sortieren wolltest, würde das Gewurschtel schon losgehen....
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
volcanos Scrollen: JScrollPane mit Graphics g und Java-Fonts extends Frame ? AWT, Swing, JavaFX & SWT 5
P kein Scrollen nach affinertransformation bei mouse dragged AWT, Swing, JavaFX & SWT 2
S JavaFX JavaFX TableView scrollen färbt falsche Zeilen AWT, Swing, JavaFX & SWT 1
S Nach scrollen verschwindet das zuvor im JPanel gezeichnete AWT, Swing, JavaFX & SWT 2
J JList scrollen AWT, Swing, JavaFX & SWT 3
Bluedaishi JTextArea gefundene Zeile nach Oben Scrollen AWT, Swing, JavaFX & SWT 13
P Swing Horizontales Scrollen mit Shift-Mausrad AWT, Swing, JavaFX & SWT 2
N Swing Problem beim Scrollen mit JScrollPane AWT, Swing, JavaFX & SWT 6
W JavaFX Scrollpane elementweise scrollen AWT, Swing, JavaFX & SWT 4
Thallius Automatisches Scrollen zum aktiven JTextView klappt nicht AWT, Swing, JavaFX & SWT 2
J Swing JTextPane mit JScrollPane auf JPanel scrollen nicht AWT, Swing, JavaFX & SWT 6
W Swing Zum Ende einer Scrollpane scrollen AWT, Swing, JavaFX & SWT 2
S JScrollPane --> Programm hängt sich beim scrollen auf AWT, Swing, JavaFX & SWT 2
S JavaFX Mehrere TreeTableView's synchron scrollen AWT, Swing, JavaFX & SWT 0
O Tabelle "animiert" Scrollen AWT, Swing, JavaFX & SWT 1
O Swing JTable per Scrollen füllen! AWT, Swing, JavaFX & SWT 7
J AWT choice mit viel Auswahl aktualisiert sich nicht korrekt beim scrollen?! AWT, Swing, JavaFX & SWT 3
P Durch Bilder Scrollen AWT, Swing, JavaFX & SWT 2
U Swing JPane und JScrollpane in JSplitpane-Seite: Scrollen funktioniert nicht AWT, Swing, JavaFX & SWT 3
J JTable wird bei scrollen falsch gezeichnet AWT, Swing, JavaFX & SWT 3
N Touchscreen-Scrollen, wo liegt der Fehler? AWT, Swing, JavaFX & SWT 3
S Swing Scrollpanes: wie kann ich durch Java-Code an den "Anfang" scrollen AWT, Swing, JavaFX & SWT 8
G JTable zentriert scrollen AWT, Swing, JavaFX & SWT 2
D SWING - Ein Composite scrollen AWT, Swing, JavaFX & SWT 6
S Canvas in ScrollPane wird beim scrollen immer neu gezeichnet AWT, Swing, JavaFX & SWT 3
D Swing JScrollbar ganz nach unten scrollen AWT, Swing, JavaFX & SWT 2
K SWT treeviewer scrollen AWT, Swing, JavaFX & SWT 8
F Swing Mehrere Textfelder in Scrollpane einfügen und dann zum Scrollen bringen? AWT, Swing, JavaFX & SWT 4
J Lazy Loading eine JTree während Scrollen AWT, Swing, JavaFX & SWT 11
A Swing Scrollen über JPane AWT, Swing, JavaFX & SWT 20
Dit_ JTextArea zu Zeile X scrollen AWT, Swing, JavaFX & SWT 4
S SWT Zwei Tabellen gleichzeitig Scrollen AWT, Swing, JavaFX & SWT 3
Dragonfire Swing JPanel nur vertikal scrollen AWT, Swing, JavaFX & SWT 4
hdi SWT ScrolledComposite -> Nix mit Scrollen? AWT, Swing, JavaFX & SWT 8
T In einem Label scrollen AWT, Swing, JavaFX & SWT 3
A Swing JScrollPane ans ende Scrollen AWT, Swing, JavaFX & SWT 9
W SwingX Problem mit Scrollen von 2 JXTaskPaneContainer AWT, Swing, JavaFX & SWT 3
S Swing Scrollen ohne Leiste? AWT, Swing, JavaFX & SWT 2
R Zu selektiertem Column in JTable scrollen? AWT, Swing, JavaFX & SWT 2
P Drei Scrollpanes gleichzeitig scrollen AWT, Swing, JavaFX & SWT 3
G Scrollen per mouseDragged (JScrollPane) AWT, Swing, JavaFX & SWT 8
H jScrollPane ohne Scrollen AWT, Swing, JavaFX & SWT 2
G Mehrere JScrollPanes gekoppelt scrollen AWT, Swing, JavaFX & SWT 2
G JTable in JScrollPane - nach unten scrollen AWT, Swing, JavaFX & SWT 11
S JList automatisch scrollen AWT, Swing, JavaFX & SWT 8
D JScrollPane incl. thumbnails, soll fluessig scrollen! AWT, Swing, JavaFX & SWT 3
J JScrollPane soll automatisch zu einem punkt scrollen AWT, Swing, JavaFX & SWT 4
P JPopupMenu scrollen AWT, Swing, JavaFX & SWT 2
J JList Scrollen AWT, Swing, JavaFX & SWT 8
M PerformanceProbleme(Beim Scrollen ruckelt es) AWT, Swing, JavaFX & SWT 16
Z JTable automatisch zu einer Zeile scrollen AWT, Swing, JavaFX & SWT 4
D JScrollPane mit Grafiken scrollen lassen AWT, Swing, JavaFX & SWT 2
G 3 oder mehr JTable nebeneinander gleichzeitig vert. scrollen AWT, Swing, JavaFX & SWT 4
R JTextPane scrollen vermeiden AWT, Swing, JavaFX & SWT 2
S JScrollPane > JPanel - automatisch scrollen AWT, Swing, JavaFX & SWT 2
R Einstellen der Maus Rad Geschwindigkeit beim Scrollen AWT, Swing, JavaFX & SWT 3
I In JPopupMenu scrollen AWT, Swing, JavaFX & SWT 4
S Scrollen AWT, Swing, JavaFX & SWT 2
Q ||| Scrollen mal anders - Console mitscrollender Text??? AWT, Swing, JavaFX & SWT 6
G Problem mit horizontal und vertikal scrollen AWT, Swing, JavaFX & SWT 2
M Scrollen - Geschwindigkeit - Scrollgeschwindigkeit AWT, Swing, JavaFX & SWT 2
G JScrollPane - scrollen mit Pfeiltasten AWT, Swing, JavaFX & SWT 3
J Wie kann man beim BoxLayout scrollen? Keine Scrollleiste!:-( AWT, Swing, JavaFX & SWT 7
R JTable zu einem bestimmten Eintrag automatisch scrollen? AWT, Swing, JavaFX & SWT 2
A Scrollpane verschmiert beim scrollen AWT, Swing, JavaFX & SWT 5
S Position von Labels, Buttons, etc. festsetzen und Scrollen AWT, Swing, JavaFX & SWT 4
N JTable scrollen AWT, Swing, JavaFX & SWT 4
F 3 JTextAreas zusammen scrollen AWT, Swing, JavaFX & SWT 5
O JScrollPane beinhaltet JPanel mit null Layout kein Scrollen AWT, Swing, JavaFX & SWT 3
G Scrollen ohne scrolleisten AWT, Swing, JavaFX & SWT 5
T JTextPane in JScrollPane NICHT autom. nach unten scrollen AWT, Swing, JavaFX & SWT 3
M JScrollPane immer bis ganz nach unten scrollen lassen AWT, Swing, JavaFX & SWT 5
J Streifen beim Scrollen AWT, Swing, JavaFX & SWT 3
F Scrollen bei JTextArea in einem Null-Layout? Unmöglich? AWT, Swing, JavaFX & SWT 4
M JScrollPane soll automatisch scrollen AWT, Swing, JavaFX & SWT 5
N JScrollPane schneller scrollen AWT, Swing, JavaFX & SWT 3
V Automatisches Scrollen bei JScrollPane AWT, Swing, JavaFX & SWT 10
N Scrollen in einem Panel AWT, Swing, JavaFX & SWT 5
S jScrollPane ganz nach unten scrollen AWT, Swing, JavaFX & SWT 4
B In JScrollPane eingebettetes JEditorPane scrollen AWT, Swing, JavaFX & SWT 2
M Scrollprobleme - Panelinhalte bleiben beim Scrollen AWT, Swing, JavaFX & SWT 2
Z JTextArea in JScrollPane automatisch scrollen AWT, Swing, JavaFX & SWT 2
K JPanle scrollen . AWT, Swing, JavaFX & SWT 2
V Probleme beim Scrollen ein JPanels mit JScrollPane AWT, Swing, JavaFX & SWT 2
G JTable automatisch scrollen AWT, Swing, JavaFX & SWT 4
S Automatisches Scrollen in einer JTextArea AWT, Swing, JavaFX & SWT 6
A Scrollen von Fenster geht nicht AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben