本人想帮下面的代码(运行后是主窗体)该成运行后是子窗提需要主窗体调运才出来的主窗体叫做formspackage mypackage;
import java.sql.*; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*;
public class DisplayQueryResults extends JFrame {
//数据库变量定义private Connection connection; private Statement statement; private ResultSet resultSet; private ResultSetMetaData rsMetaData;
//GUI变量定义private JTable table; private JTextArea inputQuery; private JButton submitQuery;
public DisplayQueryResults() { //Form的标题 super( "首单人查询" ); //url中指定ODBC中设置的DSN名称String url = "jdbc:odbc:LibraryBase.mdb"; String username = ""; String password = ""; //加载驱动程序以连接数据库try { Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" ); connection = DriverManager.getConnection( url, username, password ); } //捕获加载驱动程序异常catch ( ClassNotFoundException cnfex ) { System.err.println( "装载 JDBC/ODBC 驱动程序失败。" ); cnfex.printStackTrace(); System.exit( 1 ); // terminate program } //捕获连接数据库异常catch ( SQLException sqlex ) { System.err.println( "无法连接数据库" ); sqlex.printStackTrace(); System.exit( 1 ); // terminate program } //如果数据库连接成功,则建立GUI//SQL语句inputQuery = new JTextArea( "", 2, 30 );
submitQuery = new JButton( "查询" ); //Button事件submitQuery.addActionListener( new ActionListener() { public void actionPerformed( ActionEvent e ) { getTable(); } } );
JPanel topPanel = new JPanel(); topPanel.setLayout( new BorderLayout() ); //将"输入查询"编辑框布置到 "CENTER"topPanel.add( new JScrollPane( inputQuery), BorderLayout.CENTER ); //将"提交查询"按钮布置到 "SOUTH"topPanel.add( submitQuery, BorderLayout.SOUTH ); table = new JTable(); Container c = getContentPane(); c.setLayout( new BorderLayout() ); //将"topPanel"编辑框布置到 "NORTH"c.add( topPanel, BorderLayout.NORTH ); //将"table"编辑框布置到 "CENTER"c.add( table, BorderLayout.CENTER ); getTable(); this.setSize( 700, 600 ); //显示Formshow(); }
private void getTable() { try {
//执行SQL语句
String query = "select 检测站名称,入网时间,健康币,产品金额,收入,提成,加盟金额,加盟奖励,编号,注释,其他 from jcz";
if(!inputQuery.getText().equals(""))
query="select 检测站名称,入网时间,健康币,产品金额,收入,提成,加盟金额,加盟奖励,编号,注释,其他 from jcz where 编号='"+inputQuery.getText()+"'";
//query = query+inputQuery.getText(); statement = connection.createStatement(); resultSet = statement.executeQuery( query ); //在表格中显示查询结果displayResultSet( resultSet ); } catch ( SQLException sqlex ) { sqlex.printStackTrace(); } }
private void displayResultSet( ResultSet rs ) throws SQLException { //定位到达第一条记录boolean moreRecords = rs.next(); //如果没有记录,则提示一条消息if ( ! moreRecords ) { JOptionPane.showMessageDialog( this, "结果集中无记录" ); setTitle( "无记录显示" ); return; } Vector columnHeads = new Vector(); Vector rows = new Vector(); try { //获取字段的名称ResultSetMetaData rsmd = rs.getMetaData(); for ( int i = 1; i <= rsmd.getColumnCount(); ++i ) columnHeads.addElement( rsmd.getColumnName( i ) ); //获取记录集do { rows.addElement( getNextRow( rs, rsmd ) ); } while ( rs.next() ); //在表格中显示查询结果table = new JTable( rows, columnHeads ); JScrollPane scroller = new JScrollPane( table ); Container c = getContentPane(); c.remove(1); c.add( scroller, BorderLayout.CENTER ); //刷新Tablec.validate(); } catch ( SQLException sqlex ) { sqlex.printStackTrace(); } }
private Vector getNextRow( ResultSet rs,ResultSetMetaData rsmd ) throws SQLException { Vector currentRow = new Vector(); for ( int i = 1; i <= rsmd.getColumnCount(); ++i ) currentRow.addElement( rs.getString( i ) ); //返回一条记录 return currentRow; }
public void shutDown() { try { //断开数据库连接connection.close(); } catch ( SQLException sqlex ) { System.err.println( "Unable to disconnect" ); sqlex.printStackTrace(); } }
public static void main( String args[] ) { final DisplayQueryResults app = new DisplayQueryResults(); app.addWindowListener( new WindowAdapter() { public void windowClosing( WindowEvent e ) { app.shutDown(); System.exit( 0 ); } } ); } }
谢谢了
import java.sql.*; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*;
public class DisplayQueryResults extends JFrame {
//数据库变量定义private Connection connection; private Statement statement; private ResultSet resultSet; private ResultSetMetaData rsMetaData;
//GUI变量定义private JTable table; private JTextArea inputQuery; private JButton submitQuery;
public DisplayQueryResults() { //Form的标题 super( "首单人查询" ); //url中指定ODBC中设置的DSN名称String url = "jdbc:odbc:LibraryBase.mdb"; String username = ""; String password = ""; //加载驱动程序以连接数据库try { Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" ); connection = DriverManager.getConnection( url, username, password ); } //捕获加载驱动程序异常catch ( ClassNotFoundException cnfex ) { System.err.println( "装载 JDBC/ODBC 驱动程序失败。" ); cnfex.printStackTrace(); System.exit( 1 ); // terminate program } //捕获连接数据库异常catch ( SQLException sqlex ) { System.err.println( "无法连接数据库" ); sqlex.printStackTrace(); System.exit( 1 ); // terminate program } //如果数据库连接成功,则建立GUI//SQL语句inputQuery = new JTextArea( "", 2, 30 );
submitQuery = new JButton( "查询" ); //Button事件submitQuery.addActionListener( new ActionListener() { public void actionPerformed( ActionEvent e ) { getTable(); } } );
JPanel topPanel = new JPanel(); topPanel.setLayout( new BorderLayout() ); //将"输入查询"编辑框布置到 "CENTER"topPanel.add( new JScrollPane( inputQuery), BorderLayout.CENTER ); //将"提交查询"按钮布置到 "SOUTH"topPanel.add( submitQuery, BorderLayout.SOUTH ); table = new JTable(); Container c = getContentPane(); c.setLayout( new BorderLayout() ); //将"topPanel"编辑框布置到 "NORTH"c.add( topPanel, BorderLayout.NORTH ); //将"table"编辑框布置到 "CENTER"c.add( table, BorderLayout.CENTER ); getTable(); this.setSize( 700, 600 ); //显示Formshow(); }
private void getTable() { try {
//执行SQL语句
String query = "select 检测站名称,入网时间,健康币,产品金额,收入,提成,加盟金额,加盟奖励,编号,注释,其他 from jcz";
if(!inputQuery.getText().equals(""))
query="select 检测站名称,入网时间,健康币,产品金额,收入,提成,加盟金额,加盟奖励,编号,注释,其他 from jcz where 编号='"+inputQuery.getText()+"'";
//query = query+inputQuery.getText(); statement = connection.createStatement(); resultSet = statement.executeQuery( query ); //在表格中显示查询结果displayResultSet( resultSet ); } catch ( SQLException sqlex ) { sqlex.printStackTrace(); } }
private void displayResultSet( ResultSet rs ) throws SQLException { //定位到达第一条记录boolean moreRecords = rs.next(); //如果没有记录,则提示一条消息if ( ! moreRecords ) { JOptionPane.showMessageDialog( this, "结果集中无记录" ); setTitle( "无记录显示" ); return; } Vector columnHeads = new Vector(); Vector rows = new Vector(); try { //获取字段的名称ResultSetMetaData rsmd = rs.getMetaData(); for ( int i = 1; i <= rsmd.getColumnCount(); ++i ) columnHeads.addElement( rsmd.getColumnName( i ) ); //获取记录集do { rows.addElement( getNextRow( rs, rsmd ) ); } while ( rs.next() ); //在表格中显示查询结果table = new JTable( rows, columnHeads ); JScrollPane scroller = new JScrollPane( table ); Container c = getContentPane(); c.remove(1); c.add( scroller, BorderLayout.CENTER ); //刷新Tablec.validate(); } catch ( SQLException sqlex ) { sqlex.printStackTrace(); } }
private Vector getNextRow( ResultSet rs,ResultSetMetaData rsmd ) throws SQLException { Vector currentRow = new Vector(); for ( int i = 1; i <= rsmd.getColumnCount(); ++i ) currentRow.addElement( rs.getString( i ) ); //返回一条记录 return currentRow; }
public void shutDown() { try { //断开数据库连接connection.close(); } catch ( SQLException sqlex ) { System.err.println( "Unable to disconnect" ); sqlex.printStackTrace(); } }
public static void main( String args[] ) { final DisplayQueryResults app = new DisplayQueryResults(); app.addWindowListener( new WindowAdapter() { public void windowClosing( WindowEvent e ) { app.shutDown(); System.exit( 0 ); } } ); } }
谢谢了
public class MdiFrame extends JFrame { /** Use JDesktopPane and JInternalFrame to implement MDI frame. */
JDesktopPane desktop = new JDesktopPane();
public void MdiFrame(){
initialize();
desktop.add(new MyInernalFrame());
} public void initialize() {
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
this.setSize(screenSize);
this.setLocation(0, 0);
this.setTitle("***");
this.setLayout(new BorderLayout());
this.add(desktop, BorderLayout.CENTER);
this.pack();
this.setMaximizedBounds(new Rectangle(0, 1, screenSize.width,
screenSize.height));
this.setExtendedState(JFrame.MAXIMIZED_BOTH);
this.setDefaultLookAndFeelDecorated(true);
// Set the default close operation of this interface.
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}}
public class MyInternalFrame extends JInternalFrame{
public ICPInternalFrame(){
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
this.setSize(screenSize);
this.setLocation(0,0);
this.setVisible(true);
//this.setClosable(true);
this.setMaximizable(true);
}
}