“Java界面容器”的版本间的差异

来自CloudWiki
跳转至: 导航搜索
第58行: 第58行:
 
}
 
}
 
}</nowiki>
 
}</nowiki>
===对JFrame添加组件===
 
对JFrame添加组件有两种方式:
 
  
①用getContentPane( )方法获得JFrame的内容面板,再对其加入组件:
+
右击java文件 ,run as -> java application
  
frame.getContentPane().add(childComponent)
+
运行结果:
  
②建立一个Jpanel或 JDesktopPane之类的中间容器,把组件添加到容器中,用setContentPane()方法把该容器置为JFrame的内容面板:
+
[[文件:java10-1.png]]
  
  Jpanel centerPane=new Jpanel( );
+
==全部代码==
……//把其它组件添加到Jpanel中;
+
  <nowiki>import java.awt.*;
frame.setContentPane(centerPane);
+
import javax.swing.*;
//把centerPane对象设置成为frame的内容面板
+
public class UserInfo extends JFrame{
 +
public UserInfo() {
 +
super("电商购物平台-用户信息");
 +
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置默认关闭时操作
 +
setResizable(false);//窗口大小不能改变
 +
setSize(300,100);//设置窗口大小
 +
setVisible(true);//设置窗口可见性
 +
}
 +
public static void main(String[] args) {
 +
UserInfo userInfo=new UserInfo();
 +
}
 +
}</nowiki>
  
 
返回 [[Java程序设计]]
 
返回 [[Java程序设计]]

2019年5月11日 (六) 06:53的版本

容器是用来容纳和管理一组界面元素的对象。基本组件必须被安排在某个容器中,否则就无法使用。

GUI程序界面组成

在GUI程序中,一个窗口就是一个顶层容器,顶层容器包含若干个中间容器,每个中间容器包含若干个基本组件,如下图所示。

Java8-4.png

  • 顶层容器一般是一个顶层窗口
  • 中间容器是需要在顶层容器中使用的容器。

常用的容器组件

Swing中常用的容器组件有三个:

  1. JFrame(框架):顶层容器,主要用来设计应用程序的图像界面。
  2. JPanel(面板):中间容器,主要用于将较小的轻量级的组件组合在一起。
  3. JScrollPane(具有滚动条的面板):中间容器,主要用来管理视区、滚动条及可选的行和列的标题视区。

JFrame

JFrame是Window的子类,由JFrame或其子类创建的对象是一个窗体。

构造方法

JFrame的构造方法有两个:

  • JFrame() 创建无标题窗口。
  • JFrame(String s) 创建标题名字是字符串s的窗口。

例如:JFrame f = new JFrame(“Hello”);

常用方法

  • setTitle(String title) 设置JFrame标题文本
  • get/ setSize():获取/设置JFrame的大小。
  • getContentPane():获取系统默认容器
  • add(Object a):将组件添加到JFrame中。
  • dispose()关闭JFrame并回收用于创建窗口的任何资源。
  • setVisible(boolean b)设置JFrame的可见性。
  • setLocation(x,y) 设置JFrame在屏幕的位置
  • void setDefaultCloseOperation(int);设置默认的关闭时的操作,取值: HIDE_ON_CLOSE, DISPOSE_ON_CLOSE, EXIT_ON_CLOSE

创建JFrame

JFrame类的用法有两种:一种是直接创建其对象并使用。 下面程序演示了通过创建JFrame对象方式,创建一个窗口。

public class TestForm{
	public static void main(String[] args) {
		JFrame userInfo= new JFrame();
		userInfo.setTitle("电商购物平台——用户信息");//设置标题
		userInfo.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置默认关闭时操作
		userInfo.setResizable(false);//窗口大小不能改变
		userInfo.setSize(300,100);//设置窗口大小
		userInfo.setVisible(true);//设置窗口可见性
	}
}

程序运行结果如下图所示:

另一种方法是继承JFrame类,创建其子类,然后再创建并使用其子类的对象。下面程序实现了与上面程序同样的效果。

public class UserInfo extends JFrame{
	public UserInfo() {
		super("电商购物平台-用户信息");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置默认关闭时操作
		setResizable(false);//窗口大小不能改变
		setSize(300,100);//设置窗口大小
		setVisible(true);//设置窗口可见性
	}
	public static void main(String[] args) {
		UserInfo userInfo=new UserInfo();
	}
}

右击java文件 ,run as -> java application

运行结果:

Java10-1.png

全部代码

import java.awt.*;
import javax.swing.*;
public class UserInfo extends JFrame{
	public UserInfo() {
		super("电商购物平台-用户信息");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置默认关闭时操作
		setResizable(false);//窗口大小不能改变
		setSize(300,100);//设置窗口大小
		setVisible(true);//设置窗口可见性
	}
	public static void main(String[] args) {
		UserInfo userInfo=new UserInfo();
	}
}

返回 Java程序设计