您好,我想打印到用作 URL 的表格图像中的单元格。我将 url 以文本形式存储在数据库表数据中。 我将用于打印其余数据的方法放在其他列中,我想添加带有图像链接的另一列。
任何帮助都会很好。
public void SearchMovie() throws SQLException {
try {
Connection con = null;
ResultSet rs = null;
Statement st = null;
String Genre = ComboGenero.getSelectedItem().toString();
String Era = ComboEra.getSelectedItem().toString();
String Clsssification = ComboClasification.getSelectedItem().toString();
String sql = "select Poster,Title,Year,Country ,imdb ,Trailer from movie where Genre ='" + Genre + "'";
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost/whichmovie", "Asis", "dekrayat24");
System.out.println("Conectado a la base de datos SQLite");
st = con.createStatement();
rs = st.executeQuery(sql);
jTable1.setDefaultRenderer(Object.class, new IconCellRenderer());
DefaultTableModel model = new DefaultTableModel();
this.jTable1.setModel(model);
// Donde 50 es el tamaño que querramos en la celda según lo q necesitemos
jTable1.setRowHeight(55);
jTable1.setCellSelectionEnabled(true);
ResultSetMetaData rsMD = rs.getMetaData();
int numcolumnas = rsMD.getColumnCount();
for (int x = 1; x <= numcolumnas; x++) {
model.addColumn(rsMD.getColumnLabel(x));
}
if (!rs.next()) {
ResultadosLabel.setText("No Movies found ");
} else {
do {
Object[] fila = new Object[numcolumnas];
for (int i = 0; i < numcolumnas; i++) {
fila[i] = rs.getObject(i + 1);
byte[] imagedataCover = rs.getBytes("Poster");
format = new ImageIcon(imagedataCover);
byte[] imagedataCountry = rs.getBytes("Country");
format2 = new ImageIcon(imagedataCountry);
fila[0] = new JLabel(format);
fila[3] = new JLabel(format2);
ResultadosLabel.setText(i - 2 + " " + "Movies found ");
}
model.addRow(fila);
setAnchoColumnas();
} while (rs.next());
rs.close();
st.close();
con.close();
}
} catch (ClassNotFoundException ex) {
System.out.println(ex.getMessage());
}
}
最佳答案
定义表模型时需要定义列数 而不是使用 DefaultTableModel 的默认构造函数。您可以使用以下内容。
public DefaultTableModel(Object[][] data, Object[] columnNames) {
setDataVector(data, columnNames);
}
这只是 DefaultTableModel 类的一个片段,请参阅 java 文档以获取更多信息。
您还可以引用这个示例,它执行类似的操作,可能会对您有所帮助
关于java - 如何使用mysql在jtable中显示Url Image?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23550074/