Hallo
Ich hab wieder ein Problem mit JScrollBars ... Irgendwie sitze ich gerade auf dem Schlauch. Ist auch ein bisschen spät. Meine JScrollPanes sind nicht richtig scrollbar. Irgendwas beim setzen der Grössen mache ich falsch, aber auch nach rumspielen bin ich nicht darauf gekommen was (sowohl Haupt JPanel als auch TextArea ...). Sieht jemand das Problem?
Hier ein Beispiel Programm
Danke, MfG
Ich hab wieder ein Problem mit JScrollBars ... Irgendwie sitze ich gerade auf dem Schlauch. Ist auch ein bisschen spät. Meine JScrollPanes sind nicht richtig scrollbar. Irgendwas beim setzen der Grössen mache ich falsch, aber auch nach rumspielen bin ich nicht darauf gekommen was (sowohl Haupt JPanel als auch TextArea ...). Sieht jemand das Problem?
Hier ein Beispiel Programm
Code:
import java.awt.Dimension;
import java.util.ArrayList;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.ScrollPaneConstants;
import javax.swing.WindowConstants;
public class Beispiel1 extends JFrame{
private static final long serialVersionUID = 1938670911753068875L;
JPanel panel1;
JScrollPane spane1;
public Beispiel1(){
initComponents();
}
public void initComponents(){
this.setLayout(null);
this.setSize(700,835);
this.setLocationRelativeTo(null);
this.setResizable(false);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
panel1 = new JPanel();
panel1.setSize(this.getSize());
panel1.setPreferredSize(new Dimension(panel1.getWidth() + 40, panel1.getHeight()));
panel1.setLocation(0,0);
doExample(panel1);
panel1.setPreferredSize(panel1.getSize());
spane1 = new JScrollPane(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
spane1.setViewportView(panel1);
spane1.getVerticalScrollBar().setUnitIncrement(10);
spane1.getHorizontalScrollBar().setUnitIncrement(10);
spane1.setSize(this.getSize());
this.add(spane1);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
public void doExample(JPanel panel){
ArrayList<String> stupid = new ArrayList<String>();
String bsp1 = "Hallo";
fillArrayList(stupid,bsp1);
int start_x = 5;
int start_y = 5;
panel.setLayout(null);
for (int i = 0; i < stupid.size(); i++) {
JLabel temp = new JLabel(stupid.get(i));
JScrollPane stemp = new JScrollPane(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
JTextArea ttemp = new JTextArea(5, 30);
ttemp.setLineWrap(true);
ttemp.setWrapStyleWord(true);
stemp.setViewportView(ttemp);
temp.setBounds(start_x, start_y, (int) temp .getPreferredSize().getWidth(), (int) temp.getPreferredSize().getHeight());
start_y += (temp.getHeight() + 10);
stemp.setBounds(start_x, start_y, (int) ttemp.getPreferredSize().getWidth(), (int) ttemp.getPreferredSize().getHeight());
start_y += (stemp.getHeight() + 30);
ttemp.setPreferredSize(ttemp.getSize());
panel.add(temp);
panel.add(stemp);
}
}
public void fillArrayList(ArrayList<String> list, String text){
for(int i = 0; i < 10;i++){
list.add(text);
}
}
public static void main(String[] args) {
Beispiel1 gui1 = new Beispiel1();
}
}
Danke, MfG