Ich habe viele Themen hier gelesen, aber ich kann nicht mein Fenster mit dem Layout, das ich will. ich einfach all meine Grafikobjekte will hier in einer Reihe Stil sein, wie in dem ersten Bild: http://docs.oracle.com/javase/tutorial/uiswing/layout/box.htmlswing BoxLayout funktioniert nicht
ich Gridlayout, aber es immer noch meinen ersten Schaltfläche Riesen macht und dann versucht habe, wie ich Textfelder hinzufügen, es wird immer kleiner und kleiner ?!
Hier ist mein Code ohne alle Importe:
public class TestScrollPane extends JFrame implements ActionListener{
Dimension dim = new Dimension(200 , 50);
JButton button;
JPanel panel = new JPanel();
JScrollPane scrollpane = new JScrollPane(panel);
public TestScrollPane(){
scrollpane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
this.add(scrollpane);
//panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
this.setSize(300, 400);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
button = new JButton("click me");
button.setPreferredSize(dim);
panel.add(button);
button.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
if(e.getSource() == button){
JTextField txt = new JTextField(); // we add a new button
txt.setPreferredSize(dim);
panel.add(txt);
SwingUtilities.updateComponentTreeUI(this); // refresh jframe
}
}
public static void main(String[] args){
TestScrollPane test = new TestScrollPane();
}
}
ich nur pro Zeile eine Taste haben wollen.
Dank Kumpel, ich wusste, dass es etwas über PreferredSize war, aber ich dachte, dass button.setPreferredSize (dim); war ausreichend. – zogota
@zogota 'aber ich dachte, dass button.setPreferredSize (dim); war ausreichend. "- Sie sollten diese Aussage loswerden. Sie sollten nicht versuchen, die bevorzugte Größe einer Komponente zu steuern. – camickr
danke für den Tipp! Ich habe versucht _button.setMinimumSize (dim) _ und ich tat das gleiche für das Textfeld, aber als ich Textfelder hinzufügen, verkleinert die Schaltfläche seine Größe und so tun sie bis zu einer bestimmten Größe, die der _dim_ Dimension unterlegen ist. Was ist los ? – zogota