JAVA学习Swing章节JPanel和JScrollPane面板的简单学习
package com.swing; import java.awt.Container;
import java.awt.GridLayout; import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.WindowConstants; /**
* 1:常用面板
* 面板也是一个Swing容器,他可以看作为容器容纳其他组件,但它也必须被添加到其他容器中
* Swing中常用的面板包括JPanel面板和JScrollPane面板
*
* 2:JPanel面板可以聚集一些组件来布局
* 读者首先应该明白面板也是一种容器,因为它继承了java.awt.Container类
* @author biexiansheng
*
*/
public class JPanelTest extends JFrame{ public JPanelTest(){
Container container=getContentPane();//设置一个容器 //将整个容器设置为2行1列的网格布局 网格布局管理器x,y代表行和列
container.setLayout(new GridLayout(2,1,10,10)); //初始化一个面板,设置1行3列的网格布局
JPanel p1=new JPanel(new GridLayout(1,3,10,10));
JPanel p2=new JPanel(new GridLayout(1,2,10,10));
JPanel p3=new JPanel(new GridLayout(1,2,10,10));
JPanel p4=new JPanel(new GridLayout(2,1,10,10)); //在面板中添加按钮
p1.add(new JButton("1"));
p1.add(new JButton("2"));
p1.add(new JButton("3"));
p2.add(new JButton("4"));
p2.add(new JButton("5"));
p3.add(new JButton("6"));
p3.add(new JButton("7"));
p4.add(new JButton("8"));
p4.add(new JButton("9")); //最重要的一步,将面板实例添加到容器中
container.add(p1);
container.add(p2);
container.add(p3);
container.add(p4); //将容器外部特性实例化
setTitle("JPanel面板的案例");
setSize(400,250);//设窗体的大小 宽和高
setVisible(true);//设定窗体的可视化
//设置窗体的关闭方式
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
JPanelTest jt=new JPanelTest();
} }
案例运行结果如下

package com.swing; import java.awt.Container; import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.WindowConstants; /**
* 1:设置界面时,可能会遇到在一个较小的容器窗体中显示一个较大部分的内容的情况,这时
* 可以使用JScrollPane面板
*
* 2:JScrollPane面板是带滚动条的面板,它也是一个面板,但是JScrollPane只能
* 放置一个组件,并且不可以使用布局管理器
*
* 3:如果需要在JScrollPane面板中放置多个组件,需要将多个组件放置在JPanel面板上,
* 然后将JPanel作为一个整体组件添加到JScrollPane组件上。
*
* 4:从本实例可以得到在窗体中创建一个带滚动条的文字编辑器,首先需要初始化编辑器,
* 并且在初始化时完成编译器的大小指定,当创建带滚动条的面板时,将编译器加入面板中
* ,最后将带滚动条的编译器放置在容器中即可
* @author biexiansheng
*
*/
public class JScrollPaneTest extends JFrame{
//导入包的快捷键 shift+ctrl+o
public JScrollPaneTest(){//定义一个构造方法
Container container=getContentPane();//创建一个容器 //创建文本区域组件
JTextArea ta=new JTextArea(20,50); //创建JScrollPane()面板对象,并将文本域对象添加到面板中
JScrollPane sp=new JScrollPane(ta); //将该面板添加到该容器中
container.add(sp); //设置容器的外部特性
setTitle("带滚动条的文字编辑器");//设置窗口的标题文字
setSize(400,400);//设置窗口的大小
setVisible(true);//设置可视化
//设置窗口的关闭方式
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
JScrollPaneTest jp=new JScrollPaneTest();
} }
案例运行结果如下

JAVA学习Swing章节JPanel和JScrollPane面板的简单学习的更多相关文章
- JAVA学习Swing章节按钮组件JButton的简单学习
package com.swing; import java.awt.Container; import java.awt.Dimension; import java.awt.GridLayout; ...
- JAVA学习Swing章节标签JLabel中图标的使用
package com.swing; import java.awt.Color; import java.awt.Component; import java.awt.Container; impo ...
- JAVA学习Swing章节流布局管理器简单学习
package com.swing; import java.awt.Container; import java.awt.FlowLayout; import javax.swing.JButton ...
- 在MVC中实现和网站不同服务器的批量文件下载以及NPOI下载数据到Excel的简单学习
嘿嘿,我来啦,最近忙啦几天,使用MVC把应该实现的一些功能实现了,说起来做项目,实属感觉蛮好的,即可以学习新的东西,又可以增加自己之前知道的知识的巩固,不得不说是双丰收啊,其实这周来就开始面对下载在挣 ...
- java代码swing编程JPaswordField类
总结:JPasswordField类是JTextField类的子类.用户在JPasswordField对象中输入的字符会被其他的字符替代 而挡住,JPasswordFiled组件主要用来输入口令 pa ...
- (转)Java 的swing.GroupLayout布局管理器的使用方法和实例
摘自http://www.cnblogs.com/lionden/archive/2012/12/11/grouplayout.html (转)Java 的swing.GroupLayout布局管理器 ...
- 《Java程序设计与数据结构教程(第二版)》学习指导
<Java程序设计与数据结构教程(第二版)>学习指导 欢迎关注"rocedu"微信公众号(手机上长按二维码) 做中教,做中学,实践中共同进步! 原文地址:http:// ...
- 你也可以用java的swing可以做出这么炫的mp3播放器_源码下载
I had published the blog : 你用java的swing可以做出这么炫的mp3播放器吗? and to display some screenshots about this M ...
- 你用java的swing可以做出这么炫的mp3播放器吗?
这个mp3播放器是基于java的swing编写的,我认为界面还是可以拿出来和大家看一看评一评. 先说说创作的初衷,由于前段时间工作不是很忙,与其闲着,还不如找一些东西来给自己捣腾捣腾,在 之前写的 j ...
随机推荐
- Java关键字总结及详解
Java关键字是Java的保留字,这些保留字不能用来作为常量.变量.类名.方法名及其他一切标识符的名称. 一.基本数据类型 Java中有八种基本数据类型,六种数字类型(四个整数型.六中浮点型),一种字 ...
- libcore.io.GaiException: getaddrinfo failed: EAI_NODATA (No address associated with hostname)
log报错如下: Caused by: libcore.io.GaiException: getaddrinfo failed: EAI_NODATA (No address associated w ...
- MVC学习(四)几种分页的实现(3)
在这篇MVC学习(四)几种分页的实现(2)博文中,根据URL中传入的两个参数(页码数,首页.上一页.下一页.末页的标记符)来获得对应的分页数据, 只是传入的参数太多,调用起来不太方便(标记符不能够写错 ...
- flash项目优化总结
swc中的类如果没有在项目中没有被申明,在编译时就不会被编译进swf中,这样一些swc中的类和资源类如果不用了,只要不被声明就不会占用swf大小了.
- Oracle 10g -- 修改DB的编码
修改DB的原因是:因为我的DB不支持中文,所以每当我向数据库表中插入一条数据的时候,中文就都变了类似于“?(是反问号)”的乱码,为了能顺利插入成功,故做了此次修改; 系统:windows XP 英文版 ...
- 一个使用高并发高线程数 Server 使用异步数据库客户端造成的超时问题
现象 今天在做一个项目时, 将 tomcat 的 maxThreads 加大, 加到了 1024, tomcat 提供的服务主要是做一些运算, 然后插入 redis, 查询 redis, 最后将任务返 ...
- 自动化运维工具之ansible(转)
原文链接:http://os.51cto.com/art/201409/451927_all.htm
- UICollectionCell可移动的逻辑
- ubuntu下非本账户的.profile文件的修改
今天不小心在账户了修改了自己的.profile文件,导致重启之后账户无法进入,点登陆账户后黑屏后就重新回到账户登陆界面.一番折腾之后终于成功修改了原账户中的.profile文件,成功从新进入了原账户. ...
- LeetCode OJ-- Word Ladder II ***@
https://oj.leetcode.com/problems/word-ladder-ii/ 啊,终于过了 class Solution { public: vector<vector< ...