2个java文件,
一个主窗口(MainWindow.java);
一个子窗口(JRpassword.java)。点击主窗口的一个按钮后弹出子窗口。怎末实现这个 子窗口 为模态窗口呢?(焦点问题吗?)下面是主窗口的一段代码,
public void actionPerformed(ActionEvent e){
if(e.getActionCommand().equals("reworkpassword")){
JRpassword newf = new JRpassword();
newf.JRpassword();
}
下面是子窗口代码(修改密码的)
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;public class JRpassword implements ActionListener{
JFrame jf = new JFrame("修改密码");
Container cont = jf.getContentPane();
public String string1=new String();
public JTextField userid;
public JPasswordField oldpassword;
public JPasswordField newpassword;
public JPasswordField surenewpassword;
public JButton jb2,jb3;
void loginButton(){
userid=new JTextField();
userid.setBounds(90,20,170,25);
cont.add(userid);
oldpassword =new JPasswordField();
oldpassword.setBounds(90,60,170,25);
cont.add(oldpassword);
newpassword =new JPasswordField();
newpassword.setBounds(90,100,170,25);
cont.add(newpassword);
surenewpassword =new JPasswordField();
surenewpassword.setBounds(90,140,170,25);
cont.add(surenewpassword);
jb2=new JButton("取消");
jb2.setActionCommand("exit");//取消命令
jb2.addActionListener(this);
jb2.setBounds(190,170,80,30);
cont.add(jb2);
jb3=new JButton("确定");
jb3.setActionCommand("sure");//确定命令
jb3.addActionListener(this);
jb3.setBounds(60,170,80,30);
cont.add(jb3);
jb3.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent ae){
string1=userid.getText()+"0"+oldpassword.getText();
String name =userid.getText();
String password2 =newpassword.getText();
String password1 =oldpassword.getText();
if(string1.equals("0")){
JOptionPane.showMessageDialog(null,"用户名或原密码不能为空!","警告",JOptionPane.INFORMATION_MESSAGE);
}else if(!newpassword.getText().equals(surenewpassword.getText())){
JOptionPane.showMessageDialog(null,"确认新密码错误!","警告",JOptionPane.INFORMATION_MESSAGE);
}else{
jf.dispose();
new Updatepassword(name,password2,password1);
}}
}
);
}
void loginLabel(){
JLabel la1=new JLabel("账号");
la1.setBounds(45,20,45,25);
cont.add(la1);
JLabel la2=new JLabel("原密码");
la2.setBounds(45,60,45,25);
cont.add(la2);
JLabel la3=new JLabel("新密码");
la3.setBounds(45,100,45,25);
cont.add(la3);
JLabel la4=new JLabel("确认密码");
la4.setBounds(35,140,55,25);
cont.add(la4);
JLabel la5=new JLabel("");
cont.add(la5);
}
void loginFrame(){
jf.setTitle("修改密码");
Toolkit kit = Toolkit.getDefaultToolkit();//获取Toolkit对象
Dimension screenSize = kit.getScreenSize();
int width = screenSize.width;
int height = screenSize.height;
int x = (width - 330) / 2;
int y = (height - 240) / 2;
jf.setBounds(x,y,330,240); jf.setVisible(true);
jf.setResizable(false);
}
void loginshowmodal(){
jf.Showmodal;
}
void showJRpassword(){
loginshowmodal();
loginButton();
loginLabel();
loginFrame();
}
public void actionPerformed(ActionEvent ae){
if(ae.getActionCommand().equals("exit")){
jf.dispose();
}
}
void JRpassword () {
JRpassword LG =new JRpassword();
LG.showJRpassword();
} }
一个主窗口(MainWindow.java);
一个子窗口(JRpassword.java)。点击主窗口的一个按钮后弹出子窗口。怎末实现这个 子窗口 为模态窗口呢?(焦点问题吗?)下面是主窗口的一段代码,
public void actionPerformed(ActionEvent e){
if(e.getActionCommand().equals("reworkpassword")){
JRpassword newf = new JRpassword();
newf.JRpassword();
}
下面是子窗口代码(修改密码的)
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;public class JRpassword implements ActionListener{
JFrame jf = new JFrame("修改密码");
Container cont = jf.getContentPane();
public String string1=new String();
public JTextField userid;
public JPasswordField oldpassword;
public JPasswordField newpassword;
public JPasswordField surenewpassword;
public JButton jb2,jb3;
void loginButton(){
userid=new JTextField();
userid.setBounds(90,20,170,25);
cont.add(userid);
oldpassword =new JPasswordField();
oldpassword.setBounds(90,60,170,25);
cont.add(oldpassword);
newpassword =new JPasswordField();
newpassword.setBounds(90,100,170,25);
cont.add(newpassword);
surenewpassword =new JPasswordField();
surenewpassword.setBounds(90,140,170,25);
cont.add(surenewpassword);
jb2=new JButton("取消");
jb2.setActionCommand("exit");//取消命令
jb2.addActionListener(this);
jb2.setBounds(190,170,80,30);
cont.add(jb2);
jb3=new JButton("确定");
jb3.setActionCommand("sure");//确定命令
jb3.addActionListener(this);
jb3.setBounds(60,170,80,30);
cont.add(jb3);
jb3.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent ae){
string1=userid.getText()+"0"+oldpassword.getText();
String name =userid.getText();
String password2 =newpassword.getText();
String password1 =oldpassword.getText();
if(string1.equals("0")){
JOptionPane.showMessageDialog(null,"用户名或原密码不能为空!","警告",JOptionPane.INFORMATION_MESSAGE);
}else if(!newpassword.getText().equals(surenewpassword.getText())){
JOptionPane.showMessageDialog(null,"确认新密码错误!","警告",JOptionPane.INFORMATION_MESSAGE);
}else{
jf.dispose();
new Updatepassword(name,password2,password1);
}}
}
);
}
void loginLabel(){
JLabel la1=new JLabel("账号");
la1.setBounds(45,20,45,25);
cont.add(la1);
JLabel la2=new JLabel("原密码");
la2.setBounds(45,60,45,25);
cont.add(la2);
JLabel la3=new JLabel("新密码");
la3.setBounds(45,100,45,25);
cont.add(la3);
JLabel la4=new JLabel("确认密码");
la4.setBounds(35,140,55,25);
cont.add(la4);
JLabel la5=new JLabel("");
cont.add(la5);
}
void loginFrame(){
jf.setTitle("修改密码");
Toolkit kit = Toolkit.getDefaultToolkit();//获取Toolkit对象
Dimension screenSize = kit.getScreenSize();
int width = screenSize.width;
int height = screenSize.height;
int x = (width - 330) / 2;
int y = (height - 240) / 2;
jf.setBounds(x,y,330,240); jf.setVisible(true);
jf.setResizable(false);
}
void loginshowmodal(){
jf.Showmodal;
}
void showJRpassword(){
loginshowmodal();
loginButton();
loginLabel();
loginFrame();
}
public void actionPerformed(ActionEvent ae){
if(ae.getActionCommand().equals("exit")){
jf.dispose();
}
}
void JRpassword () {
JRpassword LG =new JRpassword();
LG.showJRpassword();
} }
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货