Java——其他容器
除了JFrame表示之外,还有其他几种常见的窗体:JPanel、JSplitPane、JTabbedPane、JScrollPane、JDesktopPane、JInternalFrame等。

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel; //=================================================
// File Name : JPanel_demo
//------------------------------------------------------------------------------
// Author : Common //主类
//Function : JPanel_demo
public class JPanel_demo { public static void main(String[] args) {
// TODO 自动生成的方法存根
JFrame f = new JFrame("Swing窗口"); //实例化窗体对象
JPanel pan = new JPanel(); //实例化JPanel对象
pan.add(new JLabel("标签--A"));
pan.add(new JLabel("标签--B"));
pan.add(new JLabel("标签--C"));
pan.add(new JButton("按钮--A"));
pan.add(new JButton("按钮--B"));
pan.add(new JButton("按钮--C"));
f.add(pan); //将JPanel加入到窗体中
f.pack();
f.setLocation(300,200); //设置显示位置
f.setVisible(true);
} }

import java.awt.Container; import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JSplitPane; //=================================================
// File Name : JSplitPane_demo
//------------------------------------------------------------------------------
// Author : Common //主类
//Function : JSplitPane_demo
public class JSplitPane_demo { public static void main(String[] args) {
// TODO 自动生成的方法存根
JFrame f = new JFrame("Swing窗口"); //实例化窗体对象
Container cont = f.getContentPane(); //得到窗体容器
JSplitPane lfsplit = null; //左右分割的JSplitPane
JSplitPane tbsplit = null; //上下分割的JSplitPane lfsplit = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,new JLabel("左标签"),new JLabel("右标签"));
lfsplit.setDividerSize(20); //设置左右的分割线大小 tbsplit = new JSplitPane(JSplitPane.VERTICAL_SPLIT,lfsplit,new JLabel("右标签"));
tbsplit.setDividerSize(10); //按百分比设置上下的分割线大小
tbsplit.setOneTouchExpandable(true); //快速展开/折叠分割条
cont.add(tbsplit); //将tbsplit加入到窗体
f.setSize(230, 80); //设置窗体
f.setLocation(300,200); //设置显示位置
f.setVisible(true);
} }

import java.awt.Container; import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTabbedPane; //=================================================
// File Name : JTabbedPane_demo
//------------------------------------------------------------------------------
// Author : Common //主类
//Function : JTabbedPane_demo
public class JTabbedPane_demo { public static void main(String[] args) {
// TODO 自动生成的方法存根
JFrame f = new JFrame("Swing窗口"); //实例化窗体对象
Container cont = f.getContentPane(); //得到窗体容器
JTabbedPane tab = null;
tab = new JTabbedPane(JTabbedPane.TOP); //设置标签在顶部显示
JPanel pan1 = new JPanel(); //设置面板
JPanel pan2 = new JPanel(); //设置面板
JButton but = new JButton("按钮"); //定义按钮
JLabel lab = new JLabel("标签"); //定义标签
pan1.add(but);
pan2.add(lab);
String picPath = "/home/common/software/database/123.jpg";
tab.addTab("图片选项", new ImageIcon(picPath), pan1,"图像");
tab.addTab("文字选项", pan2);
cont.add(tab); //加入到容器中
f.setSize(440, 320); //设置窗体
f.setLocation(300,200); //设置显示位置
f.setVisible(true);
} }

import java.awt.Container; import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane; //=================================================
// File Name : JScrollPane_demo
//------------------------------------------------------------------------------
// Author : Common //主类
//Function : JScrollPane_demo
public class JScrollPane_demo { public static void main(String[] args) {
// TODO 自动生成的方法存根
JFrame f = new JFrame("Swing窗口"); //实例化窗体对象
Container cont = f.getContentPane(); //得到窗体容器
String picPath = "/home/common/software/database/photo.jpg";
Icon icon = new ImageIcon(picPath); //实例化Icon对象
JPanel pan = new JPanel(); //定义一个面板
JLabel lab = new JLabel(icon); //定义一个标签,显示图片
pan.add(lab); //将标签加到面板中
JScrollPane scrl = null; //声明滚动面板
scrl = new JScrollPane(pan,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
cont.add(scrl); //加入到容器中
f.setSize(440, 320); //设置窗体
f.setLocation(300,200); //设置显示位置
f.setVisible(true);
} }

import java.awt.BorderLayout;
import java.awt.Container; import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JPanel; //=================================================
// File Name : JDesktopPane_demo
//------------------------------------------------------------------------------
// Author : Common //主类
//Function : JDesktopPane_demo
public class JDesktopPane_demo { public static void main(String[] args) {
// TODO 自动生成的方法存根
JFrame f = new JFrame("Swing窗口"); //实例化窗体对象
f.setLayout(new BorderLayout()); //设置布局管理器
Container cont = f.getContentPane(); //得到窗体容器
JDesktopPane desk = new JDesktopPane(); //实例化JDesktopPane容器
cont.add(desk, BorderLayout.CENTER); //将Desktop加入到窗体
JInternalFrame jif = null; //声明一个内部窗体对象
String picPath = "/home/common/software/database/123.jpg";
Icon icon = new ImageIcon(picPath); //实例化Icon对象
JPanel pan = null;
for(int i=0;i<3;i++){
jif = new JInternalFrame("指定标签"+i,true,true,true,true);
pan = new JPanel(); //定义一个面板
pan.add(new JLabel(icon)); //加入一个标签
jif.setLocation(35-i*10, 35-i*10); //设置显示位置
jif.add(pan); jif.pack();
jif.setVisible(true);
desk.add(jif); //将内部窗体加入到Desktop中
}
f.setSize(440, 320); //设置窗体
f.setLocation(300,200); //设置显示位置
f.setVisible(true);
} }
Java——其他容器的更多相关文章
- JAVA的容器---List,Map,Set (转)
JAVA的容器---List,Map,Set Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashM ...
- Java集合容器简介
Java集合容器主要有以下几类: 1,内置容器:数组 2,list容器:Vetor,Stack,ArrayList,LinkedList, CopyOnWriteArrayList(1.5),Attr ...
- [转载]四大Java EE容器
转载自: https://my.oschina.net/diedai/blog/271367 现在流行的Java EE容器有很多:Tomcat.JBoss.Resin.Glassfish等等.下面对这 ...
- 转 四大Java EE容器(Tomcat、JBoss、Resin、Glassfish)之简单比较
现在流行的Java EE容器有很多:Tomcat.JBoss.Resin.Glassfish等等.下面对这四种Java EE容器进行 ...
- java并发容器(Map、List、BlockingQueue)
转发: 大海巨浪 Java库本身就有多种线程安全的容器和同步工具,其中同步容器包括两部分:一个是Vector和Hashtable.另外还有JDK1.2中加入的同步包装类,这些类都是由Collectio ...
- Spring @Bean注解 (基于java的容器注解)
基于java的容器注解,意思就是使用Java代码以及一些注解,就可以取代spring 的 xml配置文件. 1-@Configuration & @Bean的配合 @Configuration ...
- 各种容器与服务器的区别与联系:Servlet容器、WEB容器、Java EE容器、应用服务器、WEB服务器、Java EE服务器
1.容器与服务器的联系 如上图,我们先来看下容器与服务器的联系:容器是位于应用程序/组件和服务器平台之间的接口集合,使得应用程序/组件可以方便部署到服务器上运行. 2.各种容器的区别/联系 2-1.容 ...
- 四大Java EE容器(Tomcat、JBoss、Resin、Glassfish)之简单比较
转自:http://www.cxybl.com/html/bcyy/java/201106241007.html 现在流行的Java EE容器有很多:Tomcat.JBoss.Resin.Glassf ...
- 各种容器与服务器的区别与联系 Servlet容器 WEB容器 Java EE容器 应用服务器 WEB服务器 Java EE服务器
转自:https://blog.csdn.net/tjiyu/article/details/53148174 各种容器与服务器的区别与联系 Servlet容器 WEB容器 Java EE容器 应用服 ...
- 【Java web 容器resin的安装】
#resin的安装 #启动resin #访问resin监听的java web容器端口 resin修改端口监听号
随机推荐
- 十天冲刺---Day8
站立式会议 站立式会议内容总结: 燃尽图 照片 最近思考一个问题.项目是怎么进行到这一步的. 算了,这个发在明天的冲刺总结吧.. 还需继续努力,队友快回来快回来..
- [Bundling and Minification ] 二、绑定的作用
本篇接上一篇[Bundling and Minification ] 一.如何绑定 Bundling的作用有二,一是合并文件减少资源请求的个数缩短资源请求的时间.二是自动更新到最新js或者css,当合 ...
- Edge detection using LoG
intensity梯度值分布跟图片的大小有关, 比如将一张小图片放大后会变得很模糊, 原先清晰的edge, 即大的梯度值变得模糊. 但是原有的边缘通常还是肉眼可分辨的. 但用Sobel 算子可能就检测 ...
- lightoj 1370 欧拉函数
A - Bi-shoe and Phi-shoe Time Limit:2000MS Memory Limit:32768KB 64bit IO Format:%lld & % ...
- ubuntu15.10下搭建cordova+ionic开发环境
安装jdk 在命令下输入java如果没有安装会提示该命令包含于openjdk软件包 sudo apt-get install openjdk然后按下tab会列出openjdk开头的软件包 我这里就选择 ...
- Ajax工作原理(转)
1.ajax技术的背景 不可否认,ajax技术的流行得益于google的大力推广,正是由于google earth.google suggest以及gmail等对ajax技术的广泛应用,催生了ajax ...
- ubuntu下配置和使用ssh
安装 sudo apt-get install openssh-server 启动.停止.重启ssh server sudo /etc/init.d/ssh start sudo /etc/init. ...
- MySQL乱码的几种原因
MySQL之所以会乱码,无非是以下几种原因: 1.存进数据库之前就乱码 2.在存进数据库过程中乱码 3.存进数据库后乱码 想知道在哪里出现乱码很简单,在后台打印一下就知道了. 既然知道问题出在哪里,那 ...
- 【poj3461】 Oulipo
http://poj.org/problem?id=3461 (题目链接) 题意 求一个字符串在另一个字符串中出现的次数. Solution KMP裸题,太久没写过了,都忘记怎么求next数组了..水 ...
- C# winform窗体设计-查询单个值
查询单个值主要用于对成绩最低分,最高分,学生总数,学生性别等信息的统计 在查询单个值的时候用到了ExecuteScalar方法,连接以及语句方面,以及思路和对数据的增删改差不多 下面请看一段代码: s ...