SimQQ界面的开发

SimQQ界面的开发

LoginUI.Java

首先要写一个界面,我们需要用到窗体。
这里我们会用到之前说的类与对象。
1、 首先创建一个包,名字是SimQQ
在这里插入图片描述
2、然后创建第一个LoginUI的类
在这里插入图片描述
3、 在类中定义一个展示窗体的方法。
public void showUI(){ }
4、养成一个好的习惯,在下面先写上主方法,并且调用我们的方法,这时就会用到类与对象。

public static void main (String[] args) {
  LoginUI ui = new LoginUI();
  ui.showUI();
  
}

5、现在基础已经准备好了,我们就可以开始真正的表演了
在我们的showUI 中,我们首先创建一个窗体,这里用到Java里的自带类
JFrame loginFrame = new JFrame();
这时我们的程序中已经有了一个界面,点击运行,我们会震撼的发现,什么都没有出现。
不要紧张,这是因为我们没有设置窗体可见。

   //设置窗体可见
 	loginFrame.setVisible(true);
  加上这一句,窗体就出现了,既然有设置窗体可见与否的方法,那么联想一下,当然就会有设置窗体的大小啊,布局啊等等方法。
  这一句,放在最后,我们把其他的操作,放在它之前,等我们把所有的操作写完之后,再使窗体可见,才会出现我们理想中的效果,如果不这样做,会出现什么呢?
   我们知道,Java的程序执行,一般是从上到下执行,如果你在创建窗体之后立即使窗体可见,你就会立即见到一个干净的窗体,但是你之后进行的操作,就不会再出现,因为它们“错过了”窗体可见的这句方法。
   之后啊我们就可以对这个窗体进行随便的操作啦。
   比如
//设置窗体大小
loginFrame.setSize(500, 900);
//设置窗体的关闭
loginFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   //设置窗体出现的位置
   loginFrame.setLocationRelativeTo(null);
   这里为什么要写null呢,因为我们可以看到RelativeTo这个词组,也就是和什么有联系的意思,null自然是和什么都没联系的意思,和什么都没联系,那么窗体就居中了。

6、设置窗体布局,这里我们使用最简单的流式布局
还是一样的创建流式布局的对象,然后使用

//设置布局
   FlowLayout layout = new FlowLayout();
   loginFrame.setLayout(layout);
   

7、 给窗体添加图片

//设置图片
	ImageIcon image = new ImageIcon("Bronzeware.png");
	JLabel iconLable = new JLabel(image);
	loginFrame.add(iconLable);

这里的"Bronzeware.png"是我们电脑里一张图片的位置,当然我们可以直接把图片拖进eclipse中这样就不用这么麻烦的找位置了,当然你也可以直接复制文件位置。

8、看一看我们的QQ界面,上面都有些什么呢?账号框、密码框、登录按钮、等等。

这些要用到的类都可以在我们的API文档中找到

//设置账号框
	JTextField name = new JTextField();
	Dimension inputSize = new Dimension(350,40);
	name.setPreferredSize(inputSize);
	name.setText("请输入账号");
	loginFrame.add(name);
	
	
	//设置标签
		JLabel registerLabel2 = new JLabel("注册账号");
		Font font = new Font("宋体", Font.BOLD, 20);
		registerLabel2.setForeground(Color.BLUE);
		registerLabel2.setBackground(Color.WHITE);
		registerLabel2.setFont(font);
	 	loginFrame.add(registerLabel2);
	
	 	
	//设置密码框
	JPasswordField word = new JPasswordField();
	Dimension inputSize2 = new Dimension(350,40);
	word.setPreferredSize(inputSize2);
	word.setText("请输入密码");
	loginFrame.add(word);
	
	
	//设置标签
	JLabel registerLabel = new JLabel("注册账号");
	Font font1 = new Font("宋体", Font.BOLD, 20);
	registerLabel.setForeground(Color.BLUE);
	registerLabel.setBackground(Color.WHITE);
	registerLabel.setFont(font1);
 	loginFrame.add(registerLabel);
 	
 	
 	//设置复选框
 	JCheckBox box = new JCheckBox("记住密码");
 	loginFrame.add(box);
 	JCheckBox box1 = new JCheckBox("自动登陆");
 	loginFrame.add(box1);
 	
 	//设置按钮
 	JButton btn = new JButton("登陆");
 	loginFrame.add(btn);

以上运行之后,大概可以见到一个普通的登录界面了,但是我们会发现,点击里面的按钮,没什么反应,这是因为我们的鼠标动作没有被获取,这里就要引入一个概念,叫鼠标监听器。

这里我不多作赘述,之后的文章会介绍,现在只要知道它大概的意思就是获取我们鼠标的动作,比如点击,松开,等等。

LoginListener.Java

9、加入鼠标监听器

这里我们新建一个类
在这里插入图片描述
然后

扫描二维码关注公众号,回复: 10867532 查看本文章
public class LoginListener implements ActionListener{

}

这里的implement是接口的意思,至于接口是什么,也不赘述,同样的之后的文章会提到,简单的来说它是用来连接到鼠标监听方法ActionListener的。

接下来我们开始写我们的内容

public class LoginListener implements ActionListener{
java.lang.String  s="abc";
		//获取输入框的内容
	    String name = input.getText();
	    String word = psd.getText();
	    if(name.equals("123456")&&word.equals("123")) {
	    	System.out.println("登陆成功");
         	Frame.dispose();
//	    	Frame.setVisible(false);
	    	
	    }else {
	    	JOptionPane.showMessageDialog(null, "登陆失败",

	     			"登陆失败", JOptionPane.INFORMATION_MESSAGE);
			System.out.println("登录失败!");
		}
		
	}
}

10、接下来我们在我们的界面中,也就是LoginUI中添加我们的监听器对象

//创建监听器
 	LoginListener loginL = new LoginListener();
 	btn.addActionListener(loginL);
 	loginL.input = name;
 	loginL.psd = word;
 	loginL.Frame=loginFrame;

点击运行,我们的简易登陆界面就完成了~

现在来整理一下思路,这里我们定义了两个类,一个是界面类,一个是监听器类,我们在界面类设置我们的界面的样式,然后在监听器类里写我们的监听方法,最后在界面类里添加监听器类的对象,并调用,就完成了。

over

发布了13 篇原创文章 · 获赞 1 · 访问量 306

猜你喜欢

转载自blog.csdn.net/Alagagaga/article/details/103091836