【Swing程序设计/常用面板】
面板也是一个Swing容器,可以作为容器容纳其他组件,但是它必须要被添加到其他容器中。Swing常见的面板是JPanel面板和JScrollPanel面板。
- JPanel面板可以聚集一些组件来布局。
- 例:在项目中创建JPanelTest类,该类继承JFrame类成为窗体组件,在该类中创建4个JPanel组件,并将他们添加到窗体中。
- 代码实现:
/**
*
*/
package 常用窗体; import java.awt.Button;
import java.awt.Container;
import java.awt.GridLayout; import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.WindowConstants; /**5 常用面板/Jpanel 面板(面板也是一种容器)
*
* @author 粤晨
*
*/
public class JPanelTest extends JFrame {
public JPanelTest() {
Container c=getContentPane();
c.setLayout(new GridLayout(2,1,10,10));//将整个容器设置为2行1列的网格布局
//初始化一个面板,设置1行3列的网格布局
JPanel p1=new JPanel(new GridLayout(1,2,5,5));//问题:参数是什么意思?列宽?
JPanel p2=new JPanel(new GridLayout(1,3,5,10));
JPanel p3=new JPanel(new GridLayout(1,3,5,10));
JPanel p4=new JPanel(new GridLayout(2,1,10,10));
p1.add(new Button("1"));
p2.add(new Button("2"));
p3.add(new Button("3"));
p4.add(new Button("4"));
c.add(p1);
c.add(p2);
c.add(p3);
c.add(p4);
setVisible(true);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); }
/**
* @param args
*/
public static void main(String[] args) {
new JPanelTest();
// TODO Auto-generated method stub } }
JScrollPanel面板是带滚动条的面板,也是一种容器,但是它只能放置一个组件,并且不可以使用布局管理器。如果需要放置多个组件,需要将多个组件全部放在JPanel面板上然后将JPanel面板作为整体组件添加到JScrollPanel
- 例:在项目中创建JScrollPanelTest类,该类继承JFrame类成为窗体组件,在该类中创建4个JScrollPane面板组件,并将他们添加到窗体中。
- 代码实现:
/**
*
*/
package 常用窗体; import java.awt.Container; import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.WindowConstants; /**JScroPane 是带滚动条的面板
* @author 粤晨
*
*/
public class JScrollPaneTest extends JFrame {
public JScrollPaneTest() {
Container c=getContentPane();
JTextArea ta=new JTextArea(20,50);//创建文本区域组件
ta.setText("带滚动条的文字编辑器");
JScrollPane sp=new JScrollPane(ta);//创建JScrollPane面板对象
c.add(sp);
setVisible(true);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
} /**
* @param args
*/
public static void main(String[] args) {
new JScrollPaneTest();
// TODO Auto-generated method stub } }截图:

【Swing程序设计/常用面板】的更多相关文章
- 第13章 Swing程序设计----常用面板
面板也是一个Swing容器,它可以作为容器容纳其他组件,但它也必须被添加到其他容器中. Swing常用的面板包括JPanel面板和JScrollPanel面板. 1.JPanel面板 import j ...
- 第13章 Swing程序设计----常用事件监听器
组件本身并不带有任何功能.这时需要为这些组件添加特定事件监听器. Swing中常用的两个事件监听器,即动作事件监听器和焦点事件监听器.
- Java进阶篇(六)——Swing程序设计(下)
三.布局管理器 Swing中,每个组件在容器中都有一个具体的位置和大小,在容器中摆放各自组件时很难判断其具体位置和大小,这里我们就要引入布局管理器了,它提供了基本的布局功能,可以有效的处理整个窗体的布 ...
- 第13章 Swing程序设计
1.Swing概述 GUI(图形用户界面)为程序提供图形界面,最初的设计目的是为程序员构建一个通用的GUI,使其能够在所有平台上运行.但Java 1.0中基础类AWT(抽象窗口工具箱)并没有达到这个要 ...
- 第13章 Swing程序设计----JFrame窗体
JFrame窗体是一个容器,它是Swing程序中各个组件的载体,可以将JFrame看作是承载这些Swing组件的容器. 在开发应用程序时可以通过继承java.swing.JFrame类创建一个窗体,在 ...
- Java进阶篇(六)——Swing程序设计(上)
Swing是GUI(图形用户界面)开发工具包,内容有很多,这里会分块编写,但在进阶篇中只编写Swing中的基本要素,包括容器.组件和布局等,更深入的内容会在高级篇中出现.想深入学习的朋友们可查阅有关资 ...
- java常用面板
public class JPanelTest extends JFrame{ public JPanelTest(){ Container c=getContentPane(); ...
- 第13章 Swing程序设计----JDialog窗体
JDialog窗体是Swing组件中的对话框 JDialog窗体的功能是从一个窗体中弹出另一个窗体,就像是在使用IE浏览器时弹出的确定对话框一样. 在应用程序中创建JDialog窗体需要实例化JDia ...
- 第13章 Swing程序设计----标签组件与图标
在Swing中显示文本或提示信息的方法是使用标签.本节将探讨Swing标签的用法.如何创建标签,以及如何在标签上放置文本和图标. 1.标签的使用 标签可以显示一行只读文本.一个图像或带图像的文本,它并 ...
随机推荐
- Selenium + WebDriver 各浏览器驱动下载地址
Chrome 点击下载chrome的webdriver: http://chromedriver.storage.googleapis.com/index.html 不同的Chrome的版本对应的ch ...
- Mongodb: Sort operation used more than the maximum 33554432 bytes of RAM
上线许久的产品突然爆出了一个Mongodb 查询的BUG,错误如下: "exception":"org.springframework.data.mongodb.Unca ...
- Git删除本地分支和远程分支
https://blog.csdn.net/sub_lele/article/details/52289996 git branch help λ git branch -h usage: git b ...
- method.invoke(...)反射点
import java.lang.reflect.Method; import java.util.Arrays; /** * @Author: hoobey * @Description: * @D ...
- Laravel: 基础篇
一.安装 1)采用一键安装包 http://laravelacademy.org/resources-download 2)Mac 上安装 ----------在Mac上安装composer----- ...
- 解决:Reading table information for completion of table and column names
mysql -A不预读数据库信息(use dbname 更快)—Reading table information for completion of table and column names Y ...
- java maven通过SMTP发送QQ邮件的完全步骤
1.首先打开QQ邮箱的SMTP服务,因为QQ邮箱对于一般的用户都是默认关闭SMTP服务的. 找到SMTP服务的选项,可以看到此处默认是关闭的,点击开启,然后腾讯会进行一些身份验证,身份验证通过以后,腾 ...
- Mybatis抛出:Cannot obtain primary key information from the database, generated objects may be incomplete
使用 mybatis generator 生成pojo.dao.mapper时,可能会遇到 Cannot obtain primary key information from the databas ...
- mac 上安装 openJDK11
紧接上篇,mac现在基本上作为开发者的主力机,当然也要安装jdk的 首先需要卸载原来的jdk8,如下: ls /Library/Java/JavaVirtualMachines/ sudo rm -r ...
- python按行遍历一个大文件,最优的语法应该是什么?
理论上来说,总体上file.readlines()可以(取决于实现)不慢于你自己手动的一次次调用file.readline(),因为前者的循环在C语言层面,而你的循环是在Python语言层面. 但是在 ...