package com.One_Work;/**
* 工作日志
*/
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.sql.ResultSet;
import javax.swing.BorderFactory;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.border.Border;import com.OA.Dao.ResultSetTableModel;
import com.OA.Dao.dbsql;public class myJournal extends JInternalFrame {
private JTable table_show;
private JTextField Ttitle;
private JTextArea Tcontent;
private JTextField Tdate;
private JComboBox Jclass;
private ResultSetTableModel model;
private ResultSet rs;
private dbsql db;
private JPanel panel_show;
private JScrollPane scrollPane_show; public myJournal(String title, boolean a, boolean b, boolean c, boolean d) {
super(title, a, b, c, d);
getContentPane().setLayout(null);
setBounds(100, 100, 800, 600);
this.resizable = false;// 大小不可变 /**
* 编辑
*/
final JPanel pane_edit = new JPanel();
pane_edit.setLayout(null);
pane_edit.setBounds(10, 340, 770, 215);
getContentPane().add(pane_edit); Border etched2 = BorderFactory.createEtchedBorder();
Border titled2 = BorderFactory.createTitledBorder(etched2, "日志编辑");
pane_edit.setBorder(titled2); final JLabel label = new JLabel();
label.setText("日志类型:");
label.setBounds(10, 31, 66, 18);
pane_edit.add(label); Jclass = new JComboBox();
Jclass.setModel(new DefaultComboBoxModel(new String[] { "工作日志",
"个人日志" })); Jclass.setBounds(71, 28, 85, 25);
pane_edit.add(Jclass); final JLabel label_1 = new JLabel();
label_1.setText("日 期:");
label_1.setBounds(180, 31, 66, 18);
pane_edit.add(label_1); Tdate = new JTextField();
Tdate.setBounds(229, 29, 137, 22);
pane_edit.add(Tdate); final JScrollPane scrollPane_1 = new JScrollPane();
scrollPane_1.setBounds(10, 55, 750, 114);
pane_edit.add(scrollPane_1); Tcontent = new JTextArea();
scrollPane_1.setViewportView(Tcontent); final JButton button = new JButton();
button.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent e) {
add();
}
});
button.setText("添加");
button.setBounds(71, 175, 106, 28);
pane_edit.add(button); final JButton button_1 = new JButton();
button_1.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent e) {
edit();
}
});
button_1.setText("修改");
button_1.setBounds(235, 175, 106, 28);
pane_edit.add(button_1); final JButton button_2 = new JButton();
button_2.setText("删除");
button_2.setBounds(409, 175, 106, 28);
pane_edit.add(button_2); final JButton button_3 = new JButton();
button_3.setText("查询");
button_3.setBounds(586, 175, 106, 28);
pane_edit.add(button_3); Ttitle = new JTextField();
Ttitle.setBounds(466, 29, 206, 22);
pane_edit.add(Ttitle); final JLabel label_2 = new JLabel();
label_2.setText("标 题:");
label_2.setBounds(394, 31, 66, 18);
pane_edit.add(label_2); tableshow(); // 显示日志
} private void tableshow() {
db = new dbsql();
db.connect();
String sql = "Select 分类=Jlb,标题=Jtitle,内容=Jcontent,创建日期=Jdate from Journal order by JID desc";
rs = db.query(sql); model = new ResultSetTableModel(rs); panel_show = new JPanel();
panel_show.setLayout(new BorderLayout());
panel_show.setBounds(10, 10, 770, 324);
getContentPane().add(panel_show); Border etched = BorderFactory.createEtchedBorder();
Border titled = BorderFactory.createTitledBorder(etched, "日志浏览");
panel_show.setBorder(titled); scrollPane_show = new JScrollPane();
panel_show.add(scrollPane_show, BorderLayout.CENTER); table_show = new JTable(model);
table_show.addMouseListener(new MouseAdapter() {
public void mouseClicked(final MouseEvent arg0) {
int row = table_show.getSelectedRow(); // 获得当前选中的行号
Jclass.setSelectedItem(model.getValueAt(row, 0).toString());
Ttitle.setText(model.getValueAt(row, 1).toString()); // 标题
Tcontent.setText(model.getValueAt(row, 2).toString()); // 内容
Tdate.setText(model.getValueAt(row, 3).toString()); // 日期
}
});
scrollPane_show.setViewportView(table_show);
} /**
* 新增日志
*/
private void add() {
String Clb = (String) Jclass.getSelectedItem();
String title = Ttitle.getText();
String d = Tdate.getText();
String content = Tcontent.getText();
dbsql db = new dbsql();
db.connect();
String sql = "insert into Journal (Jtitle,Jlb,Jdate,Jcontent) values('"
+ title + "','" + Clb + "','" + d + "','" + content + "')";
db.update(sql);
db.close();
getContentPane().remove(panel_show); // 移除当前面板
tableshow(); // 调用显示日志
}}
红色部分就是那个下拉框,其他各项都会随着选择表格的不同行而动态变化,如何解决?
* 工作日志
*/
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.sql.ResultSet;
import javax.swing.BorderFactory;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.border.Border;import com.OA.Dao.ResultSetTableModel;
import com.OA.Dao.dbsql;public class myJournal extends JInternalFrame {
private JTable table_show;
private JTextField Ttitle;
private JTextArea Tcontent;
private JTextField Tdate;
private JComboBox Jclass;
private ResultSetTableModel model;
private ResultSet rs;
private dbsql db;
private JPanel panel_show;
private JScrollPane scrollPane_show; public myJournal(String title, boolean a, boolean b, boolean c, boolean d) {
super(title, a, b, c, d);
getContentPane().setLayout(null);
setBounds(100, 100, 800, 600);
this.resizable = false;// 大小不可变 /**
* 编辑
*/
final JPanel pane_edit = new JPanel();
pane_edit.setLayout(null);
pane_edit.setBounds(10, 340, 770, 215);
getContentPane().add(pane_edit); Border etched2 = BorderFactory.createEtchedBorder();
Border titled2 = BorderFactory.createTitledBorder(etched2, "日志编辑");
pane_edit.setBorder(titled2); final JLabel label = new JLabel();
label.setText("日志类型:");
label.setBounds(10, 31, 66, 18);
pane_edit.add(label); Jclass = new JComboBox();
Jclass.setModel(new DefaultComboBoxModel(new String[] { "工作日志",
"个人日志" })); Jclass.setBounds(71, 28, 85, 25);
pane_edit.add(Jclass); final JLabel label_1 = new JLabel();
label_1.setText("日 期:");
label_1.setBounds(180, 31, 66, 18);
pane_edit.add(label_1); Tdate = new JTextField();
Tdate.setBounds(229, 29, 137, 22);
pane_edit.add(Tdate); final JScrollPane scrollPane_1 = new JScrollPane();
scrollPane_1.setBounds(10, 55, 750, 114);
pane_edit.add(scrollPane_1); Tcontent = new JTextArea();
scrollPane_1.setViewportView(Tcontent); final JButton button = new JButton();
button.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent e) {
add();
}
});
button.setText("添加");
button.setBounds(71, 175, 106, 28);
pane_edit.add(button); final JButton button_1 = new JButton();
button_1.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent e) {
edit();
}
});
button_1.setText("修改");
button_1.setBounds(235, 175, 106, 28);
pane_edit.add(button_1); final JButton button_2 = new JButton();
button_2.setText("删除");
button_2.setBounds(409, 175, 106, 28);
pane_edit.add(button_2); final JButton button_3 = new JButton();
button_3.setText("查询");
button_3.setBounds(586, 175, 106, 28);
pane_edit.add(button_3); Ttitle = new JTextField();
Ttitle.setBounds(466, 29, 206, 22);
pane_edit.add(Ttitle); final JLabel label_2 = new JLabel();
label_2.setText("标 题:");
label_2.setBounds(394, 31, 66, 18);
pane_edit.add(label_2); tableshow(); // 显示日志
} private void tableshow() {
db = new dbsql();
db.connect();
String sql = "Select 分类=Jlb,标题=Jtitle,内容=Jcontent,创建日期=Jdate from Journal order by JID desc";
rs = db.query(sql); model = new ResultSetTableModel(rs); panel_show = new JPanel();
panel_show.setLayout(new BorderLayout());
panel_show.setBounds(10, 10, 770, 324);
getContentPane().add(panel_show); Border etched = BorderFactory.createEtchedBorder();
Border titled = BorderFactory.createTitledBorder(etched, "日志浏览");
panel_show.setBorder(titled); scrollPane_show = new JScrollPane();
panel_show.add(scrollPane_show, BorderLayout.CENTER); table_show = new JTable(model);
table_show.addMouseListener(new MouseAdapter() {
public void mouseClicked(final MouseEvent arg0) {
int row = table_show.getSelectedRow(); // 获得当前选中的行号
Jclass.setSelectedItem(model.getValueAt(row, 0).toString());
Ttitle.setText(model.getValueAt(row, 1).toString()); // 标题
Tcontent.setText(model.getValueAt(row, 2).toString()); // 内容
Tdate.setText(model.getValueAt(row, 3).toString()); // 日期
}
});
scrollPane_show.setViewportView(table_show);
} /**
* 新增日志
*/
private void add() {
String Clb = (String) Jclass.getSelectedItem();
String title = Ttitle.getText();
String d = Tdate.getText();
String content = Tcontent.getText();
dbsql db = new dbsql();
db.connect();
String sql = "insert into Journal (Jtitle,Jlb,Jdate,Jcontent) values('"
+ title + "','" + Clb + "','" + d + "','" + content + "')";
db.update(sql);
db.close();
getContentPane().remove(panel_show); // 移除当前面板
tableshow(); // 调用显示日志
}}
红色部分就是那个下拉框,其他各项都会随着选择表格的不同行而动态变化,如何解决?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货