📄 megframe.java
字号:
package res;
import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JTextArea;
import java.awt.Rectangle;
import javax.swing.JLabel;
import java.awt.Font;
import java.awt.event.WindowEvent;
import java.awt.event.WindowAdapter;
import java.sql.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseAdapter;
import javax.swing.JOptionPane;
/**
* <p>Title: 个人留言查看窗口</p>
*
* <p>Description: 查看同学发给自己的留言</p>
*
* <p>Copyright: A1Q6073-未定义小组 2006</p>
*
* <p>Company: 北大青鸟Aptech(西安毕诚) </p>
*
* @author not 王亮 冯瑞 冯鹏 刘文涛 赵凡(按姓氏笔画排序)
* @version 1.0
*/
public class MegFrame extends JFrame {
JLabel lblMfor = new JLabel();
JLabel lblMtit = new JLabel();
JTextArea txaMmeg = new JTextArea();
JLabel lblMnext = new JLabel();
JLabel lblMdel = new JLabel();
MainFrame mfm;
DBconnection db = new DBconnection();
//定义 ResultSet 对象
ResultSet rs;
/*构造方法*/
public MegFrame(MainFrame mf) {
try {
mfm = mf;
sql();
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
private void jbInit() throws Exception {
getContentPane().setLayout(null);
this.addWindowListener(new MegFrame_this_windowAdapter(this));
TestImage tImage = new TestImage();
lblMfor.setFont(new java.awt.Font("楷体_GB2312", Font.BOLD, 20));
lblMfor.setText("上一条");
lblMfor.setBounds(new Rectangle(74, 261, 75, 25));
lblMfor.addMouseListener(new MegFrame_lblMfor_mouseAdapter(this));
lblMtit.setFont(new java.awt.Font("楷体_GB2312", Font.BOLD, 25));
lblMtit.setText("留言内容:");
lblMtit.setBounds(new Rectangle(46, 30, 130, 37));
txaMmeg.setBounds(new Rectangle(62, 85, 300, 170));
txaMmeg.setFont(new java.awt.Font("宋体", Font.BOLD, 15));
txaMmeg.setLineWrap(true);
txaMmeg.setWrapStyleWord(false);
lblMnext.setFont(new java.awt.Font("楷体_GB2312", Font.BOLD, 20));
lblMnext.setText("下一条");
lblMnext.setBounds(new Rectangle(174, 261, 75, 25));
lblMnext.addMouseListener(new MegFrame_lblMnext_mouseAdapter(this));
lblMdel.setFont(new java.awt.Font("楷体_GB2312", Font.BOLD, 20));
lblMdel.setText("删 除");
lblMdel.setBounds(new Rectangle(282, 261, 73, 25));
lblMdel.addMouseListener(new MegFrame_lblMdel_mouseAdapter(this));
this.setResizable(false);
this.addMouseListener(new MegFrame_this_mouseAdapter(this));
this.getContentPane().add(tImage);
tImage.add(lblMtit);
tImage.add(txaMmeg);
tImage.add(lblMdel);
tImage.add(lblMnext);
tImage.add(lblMfor);
tImage.setLayout(null);
tImage.setBounds(new Rectangle(0, 0, 565, 315)); //面板图片大小,下行为需要插的图片
tImage.setImage("image\\chk.jpg");
tImage.setSize(565, 315);
setTitle("小纸条");
}
/*自定义查询留言及显示方法*/
public void sql() {
//定义SQL2000查询语句,查询发留言人姓名,时间,内容
String sql = "select s.sname,p.gmeg_date,p.gmeg_con from prvmeg as p inner join stumeg as s on(p.gmeg_send=s.id) where p.gmeg_get='" +
mfm.txt1id.getText() + "' order by p.gmeg_id desc";
//定义修改个人有新留言状态
String sql2 = "update stuMeg set sstau=0 where id = '" +
mfm.txt1id.getText() + "'";
//执行上面定义的名为 sql 的查询语句, ResultSet 对象接收结果
rs = db.GetRs(sql);
//执行上面定义的名为 sql2 语句
db.ResultSql(sql2);
//信息显示区显示空
txaMmeg.setText(null);
try {
/*判断 ResultSet 对象是否为空*/
if (rs != null && rs.next() != true) {
JOptionPane.showMessageDialog(this, "已没有个人留言!");
mfm.setEnabled(true);
this.dispose();
} else {
txaMmeg.append("发送者:" + rs.getString(1) + "\n时 间:" +
rs.getString(2) +
"\n" + "内 容:" + rs.getString(3));
txaMmeg.setEditable(false);
}
} catch (Exception ex) {
System.out.println(ex);
}
}
/*下一条事件*/
public void lblMnext_mouseClicked(MouseEvent e) {
try {
/*判断留言是否已到最后一条*/
if (rs.isLast()) {
JOptionPane.showMessageDialog(this, "已经到最后一条");
} else {
//显示区内容为空
txaMmeg.setText(null);
//指针移动到此 ResultSet 对象的下一行
rs.next();
//在显示区显示查询内容
txaMmeg.append("发送者:" + rs.getString(1) + "\n时 间:" +
rs.getString(2) +
"\n" + "内 容:" + rs.getString(3));
}
} catch (Exception ex) {
}
}
/*上一条事件*/
public void lblMfor_mouseClicked(MouseEvent e) {
try {
/*判断留言是否已到第一条*/
if (rs.isFirst()) {
JOptionPane.showMessageDialog(this, "已经到第一条");
} else {
//显示区内容为空
txaMmeg.setText(null);
//指针移动到此 ResultSet 对象的上一行
rs.previous();
//在显示区显示查询内容
txaMmeg.append("发送者:" + rs.getString(1) + "\n时 间:" +
rs.getString(2) +
"\n" + "内 容:" + rs.getString(3));
}
} catch (Exception ex) {
}
}
/*删除事件*/
public void lblMdel_mouseClicked(MouseEvent e) {
try {
//定义SQL2000的删除语句
String sql = "delete from prvmeg where gmeg_date='" +
rs.getString(2) +
"'";
//执行SQL2000语句
db.ResultSql(sql);
//调用自定义方法
sql();
} catch (Exception ex) {
}
}
/*窗口关闭事件*/
public void this_windowClosing(WindowEvent e) {
try {
//关闭 ResultSet 对象
rs.close();
//解锁主窗口
mfm.setEnabled(true);
} catch (Exception ex) {
}
}
}
class MegFrame_lblMdel_mouseAdapter extends MouseAdapter {
private MegFrame adaptee;
MegFrame_lblMdel_mouseAdapter(MegFrame adaptee) {
this.adaptee = adaptee;
}
public void mouseClicked(MouseEvent e) {
adaptee.lblMdel_mouseClicked(e);
}
}
class MegFrame_lblMfor_mouseAdapter extends MouseAdapter {
private MegFrame adaptee;
MegFrame_lblMfor_mouseAdapter(MegFrame adaptee) {
this.adaptee = adaptee;
}
public void mouseClicked(MouseEvent e) {
adaptee.lblMfor_mouseClicked(e);
}
}
class MegFrame_lblMnext_mouseAdapter extends MouseAdapter {
private MegFrame adaptee;
MegFrame_lblMnext_mouseAdapter(MegFrame adaptee) {
this.adaptee = adaptee;
}
public void mouseClicked(MouseEvent e) {
adaptee.lblMnext_mouseClicked(e);
}
}
class MegFrame_this_windowAdapter extends WindowAdapter {
private MegFrame adaptee;
MegFrame_this_windowAdapter(MegFrame adaptee) {
this.adaptee = adaptee;
}
public void windowClosing(WindowEvent e) {
adaptee.this_windowClosing(e);
}
}
class MegFrame_this_mouseAdapter extends MouseAdapter {
private MegFrame adaptee;
MegFrame_this_mouseAdapter(MegFrame adaptee) {
this.adaptee = adaptee;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -