Hallo,
ich arbeite gerade an einem SQL-Browser. Dafür nutze ich ein JSplitPane um zwei Bereiche zu unterteilen. Der eine ist ein JTree für die Navigation durch erstellte Datenbanken und der zweite ist für Statements und die Rückgabe der ResutSets.
Nun zum Problem - Ich habe die beiden Teile in eine GridBagLayout eingesetzt um den Vorgaben meines Lehrers gerecht zu werden. Wenn ich nun das vertikale SplitPane nach links verschiebe ist verkleinert sich der Bereich so wie ich es haben will. Doch danach lässt sich das Pane nicht mehr nach rechts verschieben. Ich habe die Vermutung das ich mit dem verschieben des SplitPanes die festgelegten GridbagContraints verändere. Liege ich dort richtig?
Bild: http://www.bilder-hochladen.net/files/gx5s-1-png.html
Hier mal eine wenig vom Code:
Hoffe auf eine baldige Antwort.
Mfg burny
ich arbeite gerade an einem SQL-Browser. Dafür nutze ich ein JSplitPane um zwei Bereiche zu unterteilen. Der eine ist ein JTree für die Navigation durch erstellte Datenbanken und der zweite ist für Statements und die Rückgabe der ResutSets.
Nun zum Problem - Ich habe die beiden Teile in eine GridBagLayout eingesetzt um den Vorgaben meines Lehrers gerecht zu werden. Wenn ich nun das vertikale SplitPane nach links verschiebe ist verkleinert sich der Bereich so wie ich es haben will. Doch danach lässt sich das Pane nicht mehr nach rechts verschieben. Ich habe die Vermutung das ich mit dem verschieben des SplitPanes die festgelegten GridbagContraints verändere. Liege ich dort richtig?
Bild: http://www.bilder-hochladen.net/files/gx5s-1-png.html
Hier mal eine wenig vom Code:
Java:
{
verticalSplitPane = new JSplitPane();
getContentPane().add(verticalSplitPane,
new GridBagConstraints(0, 1, 4, 2, 0.0, 0.0,
GridBagConstraints.CENTER,
GridBagConstraints.BOTH,
new Insets(0, 0, 0, 0), 0, 0));
{
horizontalSplitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
verticalSplitPane.add(horizontalSplitPane, JSplitPane.RIGHT);
// setzt fest wo das Splitpane positioniert wird
verticalSplitPane.setDividerLocation(200);
{
panel = new JPanel();
GridBagLayout panelLayout = new GridBagLayout();
horizontalSplitPane.add(panel, JSplitPane.RIGHT);
panelLayout.rowWeights = new double[] {0.1, 0.1, 0.0, 0.0};
panelLayout.rowHeights = new int[] {7, 7, 185, 20};
panelLayout.columnWeights = new double[] {0.0, 0.1, 0.1, 0.1, 0.1};
panelLayout.columnWidths = new int[] {76, 7, 7, 7, 20};
panel.setLayout(panelLayout);
{
outputScrollPane = new JScrollPane();
panel.add(outputScrollPane, new GridBagConstraints(
0, 0, 5, 3, 0.0, 0.0,
GridBagConstraints.CENTER,
GridBagConstraints.BOTH,
new Insets(0, 0, 0, 0), 0, 0));
outputScrollPane.setPreferredSize(
new java.awt.Dimension(25, 34));
outputScrollPane.setName("outputScrollPane");
{
TableModel outputModel =
new DefaultTableModel(
new String[][] { { "One", "Two" },
{ "Three", "Four" } },
new String[] { "Column 1", "Column 2" });
output = new JTable();
outputScrollPane.setViewportView(output);
output.setModel(outputModel);
}
}
{
treeScrollPane = new JScrollPane();
verticalSplitPane.add(treeScrollPane, JSplitPane.LEFT);
{
dbTree = new JTree();
treeScrollPane.setViewportView(dbTree);
dbTree.setPreferredSize(new java.awt.Dimension(100, 72));
}
}
Hoffe auf eine baldige Antwort.
Mfg burny