【Java基础】Swing设计_1:常用窗体 - Go语言中文社区

【Java基础】Swing设计_1:常用窗体


1.Swing简述

Swing是一个用于开发Java应用程序用户界面的开发工具包。以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。 工具包中所有的包都是以swing作为名称,例如javax.swing,javax.swing.event。
Swing常用组件:JButton、JCheckBox、JComBox、JFrame、JDialog、JLabel、JRadioButton、JList、JTextField、JPasswordField、JTextArea、JOptionPane

2.常用窗体:JFrame、JDialog

窗体相当于一个大的容器,比如本页的窗体就是浏览器下面的页面,里面有按钮、下拉框、文本框,还有按钮触发事件、链接跳转等等。

窗体好比一块空白的画布,你可以任意添加按钮等组件到其中,也可以设置窗体的属性(大小、边界、排布等)。下面介绍两种常用窗体:JFrame和JDialog。


2.1  JFrame

2.1.1  创建JFrame

JFrame JF = new JFrame();
Container C = JF.getContentPane();

2.1.2 添加组件

c.add(new JButton (“按钮”));
c.add(new JLabel(“JFrame窗体”));
。。。 。。。

2.1.3 移除组件

c.remove(new JButton (“按钮”));
c.remove(new JLabel(“JFrame窗体”));
。。。 。。。
import java.awt.*;

import javax.swing.*;

import com.sun.javafx.geom.PickRay;
public class Swing_Test extends JFrame {
	public void CreatJFrame(String title) {
		JFrame jf = new JFrame(title);//实例化JFrame
		Container container = jf.getContentPane();
		JLabel ji = new JLabel("这是一个JFRAME窗体");
		ji.setHorizontalAlignment(SwingConstants.CENTER);
		container.add(ji);
		container.setBackground(Color.white);
		jf.setVisible(true);
		jf.setSize(400, 200);//设置窗体大小
		jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
		//退出方式:窗体关闭
	}
}

————————————————————————————————————————————————————————————————————————————

2.2 JDialog 窗体

JDialog 窗体是Swing组件中的对话框,它继承了AWT组件中java.awt.Dialog类。
功能:弹出新窗体。有点像弹出对话框。
创建函数:
JDialog();
JDialog(Frame 父窗体,String 标题);
JDialog(Frame 父窗体,String 标题,boolean 模式);
package com.lzw;

import java.awt.Container;
import java.awt.Dialog;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingConstants;

class MyDialog extends javax.swing.JDialog{
	private static final long serialVersionUID = 1L;

		//创建JDialog窗体
		public  MyDialog(MyFrame frame){
			super(frame,"JDialog Frame",true);
			Container c = frame.getContentPane();
			c.add(new JLabel("JDialog 弹出框"));
			setBounds(20, 20, 200, 200);
		}
}

class  MyFrame extends JFrame{
	public MyFrame(){
		JFrame jf = new JFrame("ca");
		jf.setSize(500, 500);
		Container c = jf.getContentPane();
		JLabel jl = new JLabel("JDialog");
		jl.setHorizontalAlignment(SwingConstants.CENTER);
		c.add(jl);
		JButton jb = new JButton("点我点我");
		jb.setBounds(10, 10, 20, 20);
		jf.setVisible(true);
		c.add(jb);
		jb.addActionListener(new ActionListener() {
			
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				new Dialog(MyFrame.this).setVisible(true);
			}
		});
		
	}
}



版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/u013617144/article/details/46696737
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-04-18 22:26:09
  • 阅读 ( 1044 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢