帮我看看这段代码! 多谢!就是显示不出数据!

Virginer 2001-12-18 06:34:00
package remoteoperate;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
import com.borland.jbcl.layout.*;
import java.util.*;
import java.sql.*;

public class SelectPort_Dialog extends JDialog
{

JPanel panel1 = new JPanel();
JPanel panel2 = new JPanel();
BorderLayout borderLayout1 = new BorderLayout();

XYLayout xYLayout1 = new XYLayout();
JPanel jPanel1 = new JPanel();
XYLayout xYLayout2 = new XYLayout();
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();
JTable jTable1 = new JTable();
JScrollPane jScrollPane1 = new JScrollPane();

Vector columnNames = new Vector();
Vector column = new Vector();
Vector currentRow = new Vector();
Vector rows = new Vector();

String url = "jdbc:sybase:Tds:192.168.100.178:6800/exsydb";
String username = "sa";
String password = "";
String query = "SELECT ofcname,spctype,servport,sdatype,machineip,machine FROM initfile ";
JLabel jLabel1 = new JLabel();

public SelectPort_Dialog(Frame parent)
{
super(parent);
try
{
jbInit();
}
catch(Exception e)
{
e.printStackTrace();
}
pack();
}
/**Component initialization*/
private void jbInit() throws Exception
{
//imageLabel.setIcon(new ImageIcon(MainFrame_AboutBox.class.getResource("[Your Image]")));
this.setTitle("选择端口");
setResizable(false);
panel1.setLayout(borderLayout1);
panel2.setLayout(xYLayout1);
jPanel1.setLayout(xYLayout2);
jButton1.setBorder(BorderFactory.createEtchedBorder());
jButton1.setText("确定");
jButton1.addActionListener(new SelectPort_Dialog_jButton1_actionAdapter(this));
jButton2.setBorder(BorderFactory.createEtchedBorder());
jButton2.setText("取消");
jButton2.addActionListener(new SelectPort_Dialog_jButton2_actionAdapter(this));
jLabel1.setText("jLabel1");
this.getContentPane().add(panel1, BorderLayout.CENTER);
panel1.add(panel2, BorderLayout.CENTER);
panel2.add(jPanel1, new XYConstraints(11, 280, 399, 2));
panel2.add(jTable1, new XYConstraints(1, 0, 421, 228));
panel2.add(jScrollPane1, new XYConstraints(1, 0, 421, 228));
panel2.add(jLabel1, new XYConstraints(8, 235, 402, 20));
panel2.add(jButton1, new XYConstraints(119, 260, 69, -1));
panel2.add(jButton2, new XYConstraints(236, 260, 75, -1));

JViewport port = jScrollPane1.getViewport();
port.add(jTable1);
this.getTable();
jTable1 = new JTable( rows, column );
}

private void getTable()
{
try
{
Driver sybDrv = (Driver) Class.forName( "com.sybase.jdbc2.jdbc.SybDriver" ).newInstance();
Connection connection = DriverManager.getConnection(url, username, password );
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery( query );
displayResultSet( resultSet );
}catch(Exception eDB)
{
}
}

private void displayResultSet(ResultSet rs1)
throws SQLException
{
ResultSet rs = rs1;
this.column.addElement("网元");
this.column.addElement("交换机型号");
this.column.addElement("服务端口");
this.column.addElement("端口类型");
this.column.addElement("接口机IP");
this.column.addElement("接口机名");
try
{
ResultSetMetaData rsmd = rs.getMetaData();

while ( rs.next() )
{
rows.addElement( getNextRow( rs, rsmd ) );
}
}catch(Exception eGetRs)
{
String str = eGetRs.toString();
jLabel1.setText(str);
}
}

private Vector getNextRow( ResultSet rs,ResultSetMetaData rsmd )
throws SQLException
{
for ( int i = 1; i <= rsmd.getColumnCount(); ++i )
currentRow.addElement( rs.getString( i ) );
return currentRow;
}

void jButton1_actionPerformed(ActionEvent e)
{
this.dispose();
}

void jButton2_actionPerformed(ActionEvent e)
{
this.dispose();
}
}

class SelectPort_Dialog_jButton1_actionAdapter implements java.awt.event.ActionListener
{
SelectPort_Dialog adaptee;

SelectPort_Dialog_jButton1_actionAdapter(SelectPort_Dialog adaptee)
{
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e)
{
adaptee.jButton1_actionPerformed(e);
}
}

class SelectPort_Dialog_jButton2_actionAdapter implements java.awt.event.ActionListener
{
SelectPort_Dialog adaptee;

SelectPort_Dialog_jButton2_actionAdapter(SelectPort_Dialog adaptee)
{
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e)
{
adaptee.jButton2_actionPerformed(e);
}
}
...全文
44 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
小凤哥 2001-12-19
  • 打赏
  • 举报
回复
我的一个经验是,如果要改变table 的行和列,不如用tablemodel好。你可以通过setmodel方法动态的指定table的内容。
小凤哥 2001-12-19
  • 打赏
  • 举报
回复
建立表格的一个例子:
Object[][] data = {
{"Mary", "Campione",
"Snowboarding", new Integer(5), new Boolean(false)},
{"Alison", "Huml",
"Rowing", new Integer(3), new Boolean(true)},
{"Kathy", "Walrath",
"Chasing toddlers", new Integer(2), new Boolean(false)},
{"Mark", "Andrews",
"Speed reading", new Integer(20), new Boolean(true)},
{"Angela", "Lih",
"Teaching high school", new Integer(4), new Boolean(false)}
};

String[] columnNames = {"First Name",
"Last Name",
"Sport",
"# of Years",
"Vegetarian"};

final JTable table = new JTable(data, columnNames);
有空了多看看jdk的api,ok?
flyx 2001-12-19
  • 打赏
  • 举报
回复
同意楼上的看法,java是典型的mvc结构(model-view-control),数据都放在model中处理。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧