没有合适的资源?快使用搜索试试~ 我知道了~
java备忘录编写源代码及运行界面截图.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 96 浏览量
2021-11-12
12:41:24
上传
评论
收藏 489KB PDF 举报
温馨提示
试读
32页
java备忘录编写源代码及运行界面截图.pdf
资源推荐
资源详情
资源评论
//Memorial.java
import java.awt.*;
import java.awt.event.*;
import java.awt.image.BufferedImage;
import java.io.*;
import java.util.*;
import javax.imageio.ImageIO;
import javax.swing.*;
public class Memorial extends JFrame implements ActionListener{
/**
* @param args
*/
private JLabel title,picture,mark,jl1,jl2,jl3,jl4;
private JTextField jt1,jt2,jt3;
private JButton Ok ,Cancle;
private static String name1 =null;
private static String pass1 = null;
// 构造函数
public Memorial(){
title = new JLabel(" 我的备忘录 ");
picture = new JLabel(new ImageIcon("photos/3.jpg"));// 背景标签
/*mark = new JLabel(new ImageIcon("3.jpg")); */
jl1 =new JLabel( "登录名: ");
jl2 =new JLabel( "登录密码: ");
jl3 =new JLabel( );
jl4 = new JLabel("看不清 ");
jt1 = new JTextField();
jt2 = new JTextField();
jt3 = new JTextField();
Ok = new JButton ("登录 ");
Cancle = new JButton(" 取消 ");
}
// 页面布局
public void launchFrame(){
JPanel p = (JPanel) getContentPane();
jl3.setText( getcode() );
jl3.setForeground(Color.cyan); // 设置验证码的颜色
jl3.setBorder(BorderFactory.createRaisedBevelBorder());// 使验证码凸出显示
jl4.setForeground(Color.magenta);// 设置“看不清”标签的前景色为洋红色
jl4.addMouseListener(new addEvent()); // 为“看不清”标签添加鼠标监听器
Ok.addActionListener(this); // 为“登录”按钮添加监听器
Cancle.addActionListener(this); // 为“取消”按钮添加监听器
Ok.setBorder(BorderFactory.createRaisedBevelBorder()); // 使按钮凸出显示
Cancle.setBorder(BorderFactory.createRaisedBevelBorder());
//**** 设置背景图片
p.setLayout(null);// 使用 setBounds(),必须使布局为 null
picture.setBounds(0,0,500,330);
p.add(picture);
p.setOpaque(false);// 使内容窗格透明
// 把背景图片添加到分层窗格的最底层作为背景
getLayeredPane().add(picture,new Integer(Integer.MIN_VALUE));
//**** 设置标题
title.setForeground(Color.red);
title.setFont(new Font(" 华文行楷 ",Font.BOLD,20));
title.setBounds(190,20,120,40);
p.add(title);
//**** 设置图标
BufferedImage icon = null;
try{
icon = ImageIO.read( new File( "photos/9.jpg" ) );
this.setIconImage(icon);
}catch( Exception e ){
}
jl1.setBounds(140,80,100,25);
p.add(jl1);
jt1.setBounds(240,80,100,25);
p.add(jt1);
jl2.setBounds(140,120,100,25);
p.add(jl2);
jt2.setBounds(240,120,100,25);
p.add(jt2);
jt3.setBounds(140,160,70,25);
p.add(jt3);
jl3.setBounds(250,160,40,25);
p.add(jl3);
jl4.setBounds(300, 160, 50, 25);
p.add(jl4);
Ok.setBounds(150,220,60,30);
p.add(Ok);
Cancle.setBounds(260,220,60,30);
p.add(Cancle);
setTitle(" 登录界面 ");
setBounds(300,200,500,330);
setResizable(false);// 窗口不能被拖动
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
// 获取验证码
public String getcode(){
Random rd = new Random();
String str ="";
int a[] = new int [4];
for(int i = 0; i < 4; i++){
a[i]=rd.nextInt(200);
if((a[i]>=48&&a[i]<=57)||(a[i]>=65&&a[i]<=90)||(a[i]>=97&&a[i]<=122)){
str = str + (char)a[i];
}
else{ // 获取的字符不在范围内,获取未成功;
i--; // i-- ,保证最终获取到四位的验证码
}
}
return str;
}
// 从文件中读取正确的用户名
public static String seekname() throws IOException{
用户名 .txt");
byte c[] = new byte[10];
int len=0;
while ((len = fin1.read(c))!=-1){
name1 = new String (c,0,len);
}
return name1;
}
// 从文件中读取正确的登录密码
public static String seekpass() throws IOException{
登录密码 .txt");
byte c[] = new byte[10];
int len=0;
while ((len = fin2.read(c))!=-1){
pass1 = new String (c,0,len);
}
return pass1;
}
// 判断文本框是否为空
public boolean isEmpty( JTextField jt ){
if( jt.getText().equals( "" )){
return true;
}
return false;
}
// 判断操作是否非法,主要是针对各文本框而言的;若文本框为空,提示填写信息
public boolean isLegal(){
if( isEmpty( jt1 ) ){
JOptionPane.showMessageDialog(null, " 用户名不能为空! " );
return false;
}else if( isEmpty(jt2 ) ){
JOptionPane.showMessageDialog(null, " 密码不能为空! " );
return false;
}else if( isEmpty( jt3) ){
JOptionPane.showMessageDialog(null, " 请输入验证码! " );
return false;
}else{
return true;
}
}
// 按钮事件处理
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
Object source = e.getSource();
String name2 = jt1.getText();
String pass2 = jt2.getText();
String code2 = jt3.getText();
String code1 = jl3.getText();
if(source == Ok){
if(isLegal()){ // 调用 isLegal()函数,保证文本框不为空
try { // 调用函数 seekname(),seekpass(),文件可能不存在
if(name2.equals(seekname())){
if(pass2.equals(seekpass())){
if(code2.equalsIgnoreCase( code1 )){
// 在用户登录信息完全正确的条件下, 进入备忘录(含日
历)
JOptionPane.showMessageDialog(null, " 登录成功! ");
Calendar calendar=Calendar.getInstance();
int y=calendar.get(Calendar.YEAR);
int m=calendar.get(Calendar.MONTH)+1;
int d=calendar.get(Calendar.DAY_OF_MONTH);
new CalendarPad(y,m,d);
this.dispose();// 关闭登录界面
}else{
JOptionPane.showMessageDialog(this," 验证码错误,请
重新输入! ","错误提示 ",JOptionPane.ERROR_MESSAGE);
jl3.setText( getcode() );
}
}else{
JOptionPane.showMessageDialog(this," 密码错误,请重新输
入! "," 错误提示 ",JOptionPane.ERROR_MESSAGE);
}
}else{
JOptionPane.showMessageDialog(this," 您输入的用户名不存在,
请重新输入! "," 错误提示 ",JOptionPane.ERROR_MESSAGE);
}
} catch (HeadlessException | IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
if(source == Cancle){
// 询问对话框
int choose =JOptionPane.showConfirmDialog(null, " 确定取消登录? ",
"询问 ",JOptionPane.YES_NO_OPTION);
if( choose == JOptionPane.YES_OPTION )
System.exit(0); // 退出登录系统
else if( choose == JOptionPane.NO_OPTION ){
}
}
}
class addEvent extends MouseAdapter{
@Override
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
jl3.setText( getcode() );
}
}
剩余31页未读,继续阅读
资源评论
BlueWatergg
- 粉丝: 3
- 资源: 11万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功