Hi leutz.
hab da ein kleines Problem.
hab ein JSplitPane und will auf die rechte Seite mein JPanel mit ner JTable adden.
jetzt habe ich das Prob das die JTable immer gleich gross ist und ich die grösse nicht beeinflussen kann. ?!?!
also den aufruf mach ich so
und hier mein JPanel auf dem die Tabelle liegt.
(ich greif halt hier auf ne Datenbank zu)
wenn ich aus dem JPanel TableFromDatabase ein JFrame mache kann ich ich die grösse des frames beeinflussen und
somit auch die grösse der Tabelle..
Ich habe dieses Problem öfter wenn ich ein JPanel selber erzeuge..
irgendwie macht mir das immer stress.
weiss einer wie ich hier vorgehen muss???
schon mal thx an alle helfer
hab da ein kleines Problem.
hab ein JSplitPane und will auf die rechte Seite mein JPanel mit ner JTable adden.
jetzt habe ich das Prob das die JTable immer gleich gross ist und ich die grösse nicht beeinflussen kann. ?!?!
also den aufruf mach ich so
Code:
splitpane.add(new TableFromDatabase(sql_string),JSplitPane.RIGHT);
und hier mein JPanel auf dem die Tabelle liegt.
(ich greif halt hier auf ne Datenbank zu)
Code:
import java.awt.Dimension;
import java.awt.Panel;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import java.util.Vector;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
public class TableFromDatabase extends JPanel
{
public TableFromDatabase(String sql_string)
{
Vector columnNames = new Vector();
Vector data = new Vector();
try
{
// Lade Treiber, Verbinde mit der Datenbank und erstelle Statement
new MyDatabase(MyParam.getPathConfig());
Connection con = (Connection) MyDatabase.getConnection();
// Read data from a table
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery( sql_string );
ResultSetMetaData md = rs.getMetaData();
int columns = md.getColumnCount();
// Get column names
for (int i = 1; i <= columns; i++){
columnNames.addElement( md.getColumnName(i) );
}
// Get row data
while (rs.next()){
Vector row = new Vector(columns);
for (int i = 1; i <= columns; i++){
row.addElement( rs.getObject(i) );
}
data.addElement( row );
}
rs.close();
stmt.close();
}
catch(Exception e){
System.out.println( e );
}
// Create table with database data
JTable table = new JTable(data, columnNames);
// set on JScrollPane and add it
JScrollPane scrollPane = new JScrollPane( table );
add( scrollPane );
}
}
wenn ich aus dem JPanel TableFromDatabase ein JFrame mache kann ich ich die grösse des frames beeinflussen und
somit auch die grösse der Tabelle..
Ich habe dieses Problem öfter wenn ich ein JPanel selber erzeuge..
irgendwie macht mir das immer stress.
weiss einer wie ich hier vorgehen muss???
schon mal thx an alle helfer