Java Swing中间容器怎么使用
本篇内容主要讲解“Java Swing中间容器怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java Swing中间容器怎么使用”吧!
Java基础入门 Swing中间容器
在Swing中不仅有JFrame、JDialog这样的顶级窗口,还拥有一些中间容器,这些容器不能单独存在,必须依存在顶级窗口中。最常见的是JPanel、JScrollPane。
JPanel
:JPanel和AWT中的Panel组件使用方法基本一致,他是一个无边框不能被放大、移动、关闭的面板,它的默认布局管理器是FlowLayout,当然这是可以使用setLayout()方法重新设置的JScrollPane
:与JPanel不同的是,JScrollPane是一个带有滚动条的面板容器而且这个面板只能添加一个组件,如果想添加多个组件就必须先把多个组件添加到Panel中再将Panel添加到JScroollPane中
下面举例说明一下JScrollPane的方法
方法声明 | 功能描述 |
JScrollPane() | 创建一个空的JScrollPane面板 |
JScrollPane(Component view) | 创建一个显示指定组件的JScrollPane面板,只要组件大小超过面板大小就会出现水平和垂直滚动条 |
JScrollPane(Component view,int vsbPolicy,int hsbPoliy) | 创建一个显示指定容器的JScrollPane面板 |
import java.awt.*;import javax.swing.*; public class Main extends JFrame{public Main(){this.setTitle("PanelDemo");JScrollPane scrollPane=new JScrollPane();//设置水平进度条需要时出现scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);//设置垂直进度条一直出现scrollPane.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);JPanel panel=new JPanel();panel.add(new JButton("按钮1"));panel.add(new JButton("按钮2"));panel.add(new JButton("按钮3"));panel.add(new JButton("按钮4"));for(int i=5;i<100;i++){panel.add(new JButton("按钮"+i));}//将JPanel面板添加在滚动面板上显示scrollPane.setViewportView(panel);//将滚动面板添加到窗体的中部(CENTER)this.add(scrollPane,BorderLayout.CENTER);//创建窗体可关闭按钮this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setSize(400,250);this.setVisible(true);}public static void main(String[] args)throws Exception{ new Main();}}
Java Swing顶层容器类
Swing拥有三个常用的顶层容器类
JFrame
JDialog
JApplet
1,任何画面类,必须是容器类的分支,任何界面树的顶层容器类必须是上面三个中的一个。
2,任何画面组件只能被容器类引用一次,如果复制他们到另外的容器类,它会被从第一个容器类中删除然后放在第二个容器类中。
3,顶层容器类都含有一个内容面板,包含了顶层容器要显示的内容
4,顶层容器类通常含有一个Menu Bar, 这个Menu Bar可以带来更好的使用体验,比如在Mac系统中,Menu bar会显示在screen顶上而不是app顶上。
注意,JPanel默认的排版方式是FlowLayout
但是可以使用顶层容器类的setContentPanel替换成自定义布局的JPanel类。
示例代码:
package com.jesse.kotlin.com.jesse.gui import java.awt.BorderLayoutimport java.awt.Dimensionimport javax.swing.* class WindowMain { private val rootContainer = JFrame("GUI Demo") fun buildGui(){ rootContainer.defaultCloseOperation = JFrame.EXIT_ON_CLOSE var label = JLabel("Hello world") rootContainer.contentPane.add(label, BorderLayout.CENTER) rootContainer.preferredSize = Dimension(400, 300) var menuPanel:JMenuBar = JMenuBar() menuPanel.add(JMenu("help")) rootContainer.jMenuBar = menuPanel rootContainer.pack() rootContainer.isVisible = true }} fun main(args: Array<String>) { SwingUtilities.invokeLater { WindowMain().buildGui() }}
到此,相信大家对“Java Swing中间容器怎么使用”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341