求 Java GUI 源代码,要求:
有两个窗口,一个是LOGIN窗口,一个是MAIN主窗口。
LOGIN窗口有一个密码输入框和两个按钮(一个登陆按钮,一个取消按钮)。
密码答案是系统日期"YYYYMMDD"格式,密码输入框要显示 * 。
按登陆按钮,密码对的时候。MAIN主窗口显示。
按取消按钮,程序结束。
MAIN主窗口也有一个取消按钮,按取消按钮,程序结束。本人没有这方面的经验。谢谢大家帮忙。
有两个窗口,一个是LOGIN窗口,一个是MAIN主窗口。
LOGIN窗口有一个密码输入框和两个按钮(一个登陆按钮,一个取消按钮)。
密码答案是系统日期"YYYYMMDD"格式,密码输入框要显示 * 。
按登陆按钮,密码对的时候。MAIN主窗口显示。
按取消按钮,程序结束。
MAIN主窗口也有一个取消按钮,按取消按钮,程序结束。本人没有这方面的经验。谢谢大家帮忙。
解决方案 »
- 如何使用ObjectMapper的方式实现Json和bean的自由转换
- SWT中浏览器对象调用HTML文件 相对路径怎么给?
- java如何使progressbar的进度与不button的事件同步
- 关于java多线程的执行流程的问题
- java中用如何能知道一个字符串在一个文件中出现了多少次
- 一百分相送,加班提问(郁闷中):如何将一个FORM中提交的3个表格分别保存在3个XML文件中,在线等待。。。
- 苦啃java的朋友,为了以后便于联系,我想各位是否把自己的QQ及E-MAIL留下,以方便学习交流呢?
- 如何将BufferedImage转为Image类型?
- 准备用java写一个画工作流程图的软件,大家有什么好的建议
- 如何加密.class文件而不被反编译?
- java中重载过的运算符:+,|,&
- 关于Swing中JTextPane,Document,Style,Element的问题
1. 密码输入框要显示 * 。
2. 按登陆按钮,密码对的时候。MAIN主窗口显示?
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
class swingTest extends JFrame
{
JPanel jp1;
JPanel jp2;
JPanel jp3;
JButton jb;
JButton cls;
JLabel jl;
JLabel pwd;
JTextField jt;
JPasswordField pw;
JComboBox status;
swingTest(){
jp1 = new JPanel();
jp2 = new JPanel();
jp3 = new JPanel();
jb = new JButton();
cls = new JButton();
jl = new JLabel();
jt = new JTextField(10);
pwd = new JLabel();
pw = new JPasswordField(10);
String [] st = {"上线","隐身","离开"};
status = new JComboBox(st);
// set property
jb.setText("确定");
cls.setText("关闭");
jl.setText("请输入户名:");
pwd.setText("请输入密码:");
jp1.setLayout(new FlowLayout());
jp2.setLayout(new FlowLayout());
jp3.setLayout(new FlowLayout()); jp1.add(jl);
jp1.add(jt);
jp1.add(pw);
jp2.add(jb);
jp2.add(cls);
jp3.add(pwd);
jp3.add(pw);
jp2.add(status);
this.setLayout(new BorderLayout());
this.add(jp1, BorderLayout.NORTH);
this.add(jp2, BorderLayout.SOUTH);
this.add(jp3, BorderLayout.CENTER);
this.setSize(300,150);
this.setVisible(true); this.setTitle("请输入你的姓名--------");
this.setLocationRelativeTo(this.getOwner()); //设置窗口为居中
this.setDefaultCloseOperation(EXIT_ON_CLOSE);//设置关闭窗口事件
cls.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
System.exit(-1);
}
});
jb.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
String userName = getTextFieldValue();
String pssword = getPasswordValue();
if(userName.equals(""))
{
msg("请输入姓名");
jt.requestFocus();
}else if(pssword.equals(""))
{
msg("请输入密码");
pw.requestFocus();
}else if(userName.equals("袁某人") && pssword.equals("123456"))
{
msg("密码对了!");
msg("呵呵,谢谢,你输入姓名是:"+userName +"密码是:"+pssword + "\n\n你选择的方式是:"+getStatuValue() +"登录");
pw.setText("");
pw.requestFocus();
jt.setText("");
jt.requestFocus();
System.exit(-1);
}else {
msg("密码错误,请重新输入!"+pssword);
pw.setText("");
pw.requestFocus();
jt.setText("");
jt.requestFocus();
}
}
});
}
public String getTextFieldValue(){
return this.jt.getText();
}
public String getStatuValue(){
return (String)this.status.getSelectedItem();
}
public String getPasswordValue(){
char [] c = this.pw.getPassword();
String temp = "";
for(int i = 0;i<c.length;i++)
{
temp+=c[i];
}
return temp;
}
private void msg(String str){
new JOptionPane().showMessageDialog(null,str);
}
public static void main(String [] args)
{
swingTest t = new swingTest();
}
}
问题已经基本解决。新的问题是JLabel如何刷新的问题。
在MAIN主窗口有一个COPY按钮,COPY文件的时候,
想要动态显示正在COPY的文件名字。下面的写法不行。 private void jButtonOKMouseClicked(MouseEvent evt){ jlblStatusMsg.setText("COPY aa.txt ");
jlblStatusMsg.setVisible(false);
jlblStatusMsg.setVisible(true); jlblStatusMsg.setText("COPY bb.txt ");
jlblStatusMsg.setVisible(false);
jlblStatusMsg.setVisible(true);
}