hi
in dem fenster das ich kreiert habe gibt es drei listen. an sich erscheinen die auch oki etc. dennoch wenn ihr den code mal ausführt und auf transfer klickt seht ihr dass sobald er die listen füllt die größe der listen sich nicht anpasst.
klick ich aber nur mal auf den fensterrand ohne es wirklich zu vergrößern oder sonstwas zu tun passt er es an.wieso macht er das nicht automatisch beim füllen der listen. bzw. wisst ihr wie man das machen kann?`
ausführbarer code.
danke schon mal
in dem fenster das ich kreiert habe gibt es drei listen. an sich erscheinen die auch oki etc. dennoch wenn ihr den code mal ausführt und auf transfer klickt seht ihr dass sobald er die listen füllt die größe der listen sich nicht anpasst.
klick ich aber nur mal auf den fensterrand ohne es wirklich zu vergrößern oder sonstwas zu tun passt er es an.wieso macht er das nicht automatisch beim füllen der listen. bzw. wisst ihr wie man das machen kann?`
Code:
import java.awt.Color;
import java.awt.Component;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.HashMap;
import java.util.Vector;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
public class Test extends JFrame {
private static final long serialVersionUID = 1L;
Vector<HashMap<String, String>> res = null;
JCheckBox all = new JCheckBox();
public JComboBox ComboBox;
JList List1;
JList List2;
JList List3;
JButton transfer1;
JButton transfer2;
String[] blu = {"guardian","depeche mode","sakrebleu","ulabuladrimatura","kasparovsinsel"};
public Test()
{
this.setLayout(new GridBagLayout());
addComponentInLayout(getContentPanel(),
0, 0, 1, 1,
0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0,0,0,0));
addComponentInLayout(createContents(),
0, 1, 1, 1,
1.0, 1.0, GridBagConstraints.NORTH, GridBagConstraints.HORIZONTAL, new Insets(0,0,0,0));
this.setBounds(250, 250, 425, 425);
this.setVisible(true);
}
private JPanel getContentPanel() {
JPanel contentPanel = new JPanel();
contentPanel.setLayout(new FlowLayout());
JLabel welcomeLabel = new JLabel("asdf");
welcomeLabel.setFont(new java.awt.Font("MS Sans Serif", Font.BOLD, 11));
contentPanel.add(welcomeLabel);
return contentPanel;
}
private JPanel createContents() {
List1 = new JList();
List1.setVisibleRowCount(10);
JScrollPane scroll1 = new JScrollPane(List1);
scroll1.setBackground(Color.white);
List3 = new JList();
List3.setVisibleRowCount(10);
JScrollPane scroll2 = new JScrollPane(List3);
scroll2.setBackground(Color.white);
List2 = new JList();
List2.setVisibleRowCount(10);
JScrollPane scroll3 = new JScrollPane(List2);
scroll3.setBackground(Color.white);
transfer1 = new JButton("->");
transfer2 = new JButton("<-");
transfer1.addActionListener(new testListener());
String[] testperiods = {"1","2","3"};
ComboBox = new JComboBox(testperiods );
all.setEnabled(false);
JPanel sub = new JPanel();
sub.setLayout(new GridBagLayout());
JPanel subsub = new JPanel();
subsub.setLayout(new GridBagLayout());
addComponentInContainer(sub,ComboBox,
0, 0, 4, 1,
1.0, 0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(20,2,0,0));
addComponentInContainer(sub, scroll1,
0, 1, 1, 1,
0.25, 0, GridBagConstraints.WEST, GridBagConstraints.BOTH, new Insets(10,2,0,0));
addComponentInContainer(sub, scroll2,
1, 1, 1, 1,
0.25, 0, GridBagConstraints.WEST, GridBagConstraints.BOTH, new Insets(10,2,0,0));
addComponentInContainer(sub, subsub,
2, 1, 1, 1,
0.25, 0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(10,2,0,0));
addComponentInContainer(sub,scroll3,
3, 1, 1, 1,
0.25, 0, GridBagConstraints.WEST, GridBagConstraints.BOTH, new Insets(10,2,0,10));
addComponentInContainer(subsub, transfer1,
0, 1, 1, 1,
1.0, 0.5, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(10,2,0,0));
addComponentInContainer(subsub, transfer2,
0, 2, 1, 1,
1.0, 0.5, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(10,2,0,0));
return sub;
}
//Fügt eine Componenten in das GridbagLayout ein
public void addComponentInLayout(Component aComp, int gridX, int gridY,
int gridWidth, int gridHeight, double weightX, double weightY, int anchor,
int fill, Insets insets) {
GridBagConstraints theConstraints = new GridBagConstraints(gridX, gridY, gridWidth, gridHeight, weightX,
weightY, anchor, fill, insets, 0, 0);
add(aComp, theConstraints);
}
// Fügt eine Componenten in ein z.B. Panel ein.
public void addComponentInContainer(JComponent aPanel, Component aComp,
int gridX, int gridY, int gridWidth, int gridHeight, double weightX,
double weightY, int anchor, int fill, Insets insets) {
GridBagConstraints theConstraints = new GridBagConstraints(gridX, gridY, gridWidth, gridHeight, weightX,
weightY, anchor, fill, insets, 0, 0);
aPanel.add(aComp, theConstraints);
}
class testListener implements ActionListener
{
public void actionPerformed(ActionEvent ae)
{
List1.setListData(blu);
List2.setListData(blu);
List3.setListData(blu);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Test a = new Test();
}
}
danke schon mal