m0_51965281 2021-06-21 12:01 采纳率: 50%
浏览 13
已采纳

这个程序中,弹出的框,没有内容是怎么回事

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class Login extends JFrame {

 /** * */

 private static final long serialVersionUID = 1L;

 JLabel a1 = new JLabel("账号:");

 JLabel a2 = new JLabel("密码:");

 JButton b1 = new JButton("确定");

 JButton b2 = new JButton("重置");

 JTextField jt;

 JPasswordField jp;

 public Login() {

  setTitle("登录");

  setBounds(500, 250, 300, 200);

  setVisible(true);

  setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);

  Container cp = getContentPane();

   jt = new JTextField(15);

   jp = new JPasswordField(15);

  JPanel p1 = new JPanel();

  p1.add(a1);

  p1.add(jt);

  

  JPanel p2 = new JPanel();

  p2.add(a2);

  p2.add(jp);

  

  JPanel p3 = new JPanel();

  p3.add(b1);

  p3.add(b2);

  

  cp.add( p1,BorderLayout.NORTH);

  cp.add(p2,BorderLayout.CENTER);

  cp.add( p3,BorderLayout.SOUTH);

  

  b2.addActionListener(new ActionListener() {

   public void actionPerformed(ActionEvent arge0) {

    jt.setText("");

    jp.setText("");

   }

  });

  b1.addActionListener(new ActionListener() {

   public void actionPerformed(ActionEvent arg0) {

    String t1 = jt.getText();

    String jt1 = "test1";

    if ((t1.trim().equals(jt1))

      && new String(jp.getPassword()).trim().equals("test1")) {

     JOptionPane.showMessageDialog(null, "登录成功");

    } else {

     JOptionPane.showMessageDialog(null, "用户或密码错误,请重新输入");

    }

   }

  });

 }

 

 publi

c static void main(String[] args) {

  new Login();

 }

}

 

  • 写回答

1条回答 默认 最新

  • CSDN专家-sinJack 2021-06-21 12:06
    关注

    因为你没给组件设置大小,所以显示不了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏