📄 treedemo7.java
字号:
import javax.swing.*;
import javax.swing.tree.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.sql.*;
import javax.swing.table.*;
import java.util.*;
public class TreeDemo7 implements TreeSelectionListener, ActionListener
{
JEditorPane editorPane;
JTable table;
JScrollPane p1;
DefaultTableModel dtm;
Vector title=new Vector();
JPanel p2=new JPanel();
JButton b1=new JButton("首页");
JButton b2=new JButton("prio");
JButton b3=new JButton("next");
JButton b4=new JButton("last");
JPanel pp=new JPanel();
JLabel bb=new JLabel(" ");
int count=0; //记录数
int pagesize=6; //页大小
int pagecount=0; //页数
int page=1; //当前
Statement s;
ResultSet rs;
public TreeDemo7()
{
JFrame f = new JFrame("TreeDemo");
Container contentPane = f.getContentPane();
DefaultMutableTreeNode root = new DefaultMutableTreeNode("商品种类:");
/* DefaultMutableTreeNode node = new DefaultMutableTreeNode("TreeDemo1.java");
root.add(node);
node = new DefaultMutableTreeNode("TreeDemo2.java");
root.add(node);
node = new DefaultMutableTreeNode("TreeDemo3.java");
root.add(node);
node = new DefaultMutableTreeNode("TreeDemo4.java");
root.add(node);*/
try
{
String url="jdbc:odbc:Test";
Connection con=DriverManager.getConnection(url);
Statement s=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet r=s.executeQuery("select * from spxz");
r.first();
do{
String ss=r.getString(1);
DefaultMutableTreeNode node = new DefaultMutableTreeNode(ss);
root.add(node);
}while(r.next());
}
catch(Exception e)
{
}
JTree tree = new JTree(root);
tree.getSelectionModel().setSelectionMode(
TreeSelectionModel.SINGLE_TREE_SELECTION);
tree.addTreeSelectionListener(this);
JScrollPane scrollPane1 = new JScrollPane(tree);
editorPane = new JEditorPane();
////////////////////
// String sql="select spbh as 商品编号,spxz as 商品种类 ,spmc as 商品名称, dj as 商品进价,sl as 商品数量,jsr as 接手人,sj as 进货时间,je as 金额 from in1 order by spmc";
String sql="select spbh as 商品编号,spxz as 商品种类 ,spmc as 商品名称, dj as 商品进价,sl as 商品数量,jsr as 接手人,sj as 进货时间,je as 金额 from in1 order by spmc";
try//2
{
String url="jdbc:odbc:Test";
Connection con=DriverManager.getConnection(url);
s=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=s.executeQuery(sql);
count=getcount();
pagecount=(int)count/pagesize+(count%pagesize==0?0:1);
ResultSetMetaData dbmd=rs.getMetaData();
for(int i=1;i<=dbmd.getColumnCount();i++)
{
title.addElement(dbmd.getColumnName(i));
}
dtm=new DefaultTableModel(null,title);
table=new JTable(dtm);
initTable();
table.setRowHeight(20);
p1=new JScrollPane(table);
if(pagecount!=0)
{
bb.setText(""+page);
}
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
b4.addActionListener(this);
p2.add(b1);
p2.add(b2);
p2.add(b3);
p2.add(b4);
p2.add(bb);
pp=new JPanel(new GridLayout(2,1));
pp.add(p1);
pp.add(p2);
}//2
catch(Exception e)
{
}
///加上table
JScrollPane scrollPane2 = new JScrollPane(pp);
/////////////////////
JSplitPane splitPane = new JSplitPane(
JSplitPane.HORIZONTAL_SPLIT,true, scrollPane1, scrollPane2);
contentPane.add(splitPane);
// f.pack();
f.setSize(700,500);
f.setVisible(true);
f.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
public int getcount()
{
int n=0;
try
{
if(rs.last())
{
n=rs.getRow();
rs.beforeFirst();
return n;
}
else return 0;
}
catch(Exception eeww){return 0;}
}
///////////////
void initTable()
{
dtm.setRowCount(0);
try
{//1
rs.beforeFirst();
for(int i=1;i<1+pagesize*(page-1);i++)
rs.next();
int j=0;
while(j<pagesize&&rs.next())
{
j++;
Vector v1=new Vector();
for(int i=1;i<=title.size();i++)
v1.addElement(rs.getString(i));
dtm.addRow(v1);
}
}//1
catch(Exception eee)
{
}
dtm.fireTableStructureChanged();
}
////////////
public void valueChanged(TreeSelectionEvent e)
{
JTree tree = (JTree) e.getSource();
DefaultMutableTreeNode selectionNode =
(DefaultMutableTreeNode)tree.getLastSelectedPathComponent();
String nodeName = selectionNode.toString();
if (selectionNode.isLeaf())
{
String filepath = "file:"+System.getProperty("user.dir") +
System.getProperty("file.separator") +
nodeName;
try {
editorPane.setPage(filepath);
} catch(IOException ex) {
System.out.println("找不到此文件");
}
}
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==b1){page=1;}
else if(e.getSource()==b2){if(page>1)page=page-1;}
else if(e.getSource()==b3){if(page<pagecount)page=page+1;}
else if(e.getSource()==b4){page=pagecount;}
initTable();
bb.setText(""+page);
}
public static void main(String[] args) {
new TreeDemo7();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -