获取一个Jpanel的父容器有多难

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
简介: JDialog parent = (JDialog) this.getParent().getParent().getParent().getParent(); javax.swing.JPanel--》javax.

 JDialog parent = (JDialog) this.getParent().getParent().getParent().getParent();

javax.swing.JPanel--》javax.swing.JLayeredPane--》javax.swing.JRootPane--》com.dialog.CommonDialog(Jpanel存放的Dialog容器)


一、Swing GUI编程的基本步骤:
1、选择容器;
2、调用getContenPane()方法获得JFrame容器
3、设置容器布局
4、添加组件到容器
5、设置相应组件的属性和相应事件;
二、Swing容器和组件
    1) 顶层容器:JFrame,JApplet,JDialog,JWindow共4个
  2) 中间容器:JPanel,JScrollPane,JSplitPane,JToolBar 
  3) 特殊容器:在GUI上起特殊作用的中间层,如JInternalFrame,JLayeredPane,JRootPane.
  4) 基本控件:实现人际交互的组件,如Jbutton, JComboBox, JList, JMenu, JSlider, JtextField。
  5) 不可编辑信息的显示:向用户显示不可编辑信息的组件,例如JLabel, JProgressBar, ToolTip。
  6) 可编辑信息的显示:向用户显示能被编辑的格式化信息的组件,如JColorChooser, JFileChoose, JFileChooser, Jtable, JtextArea。
三、容器控件
  控件是构成应用程序界面的基本元素,按钮、文本框、进度条等,这些都是控件。控件(这里我们只讨论可视化控件)又可以分为容器控件和非容器控件。从字面意义上来理解,容器控件就是能包含其他控件的特殊控件,例如,Java中的JPanel控件就属于容器型控件,我们可以在JPanel中放置按钮、文本框等非容器控件,你甚至可以在JPanel中再放置若干个JPanel控件(值得注意的是,顶层容器也是容器型控件,每一个窗口应用程序中有且只能有一个顶层容器控件,换句话说,顶层容器不能包括在其他的控件中)。
四、布局
 1、什么是布局?
  布局是Java中用来控制控件排列位置的一种界面管理系统。使用过其他可视化编程开发语言的人在初次接触Java界面设计时,总会感觉到Java界面设计很别扭:居然没有提供所见即所得的设置控件坐标的方法!然而,事实证明,Java本身提供的布局管理系统也一样能够出色地完成我们的需要,而且在跨平台时表现得更有优势。
2、常用的布局有:
 a)BorderLayout:将界面分割为上下左右以及中间一块区域的管理系统,在BorderLayout布局中,最多你只能放5个控件,如果超过5个控件,建议还是选用其他的布局系统吧。
 b)GridLayout:GridLayout是将用户界面切割为棋盘一样的布局管理系统。如果我们要设计一个类似于Windows中自带的计算器软件,GridLayout无疑是最佳选择。
 c)FlowLayout:FlowLayout与上述两类布局管理系统不太一样,在FlowLayout中,你不必指定每个控件放在哪,你只需要把控件加入到FlowLayout中,FlowLayout就会根据你添加控件的顺序依次放置控件,如果空间不够,会自动换行。
d)CardLayout:俗称卡片布局管理器它把组件安排到插件队列中。

 

http://blog.sina.com.cn/s/blog_62a641250100gvjr.html

 

相关文章
|
安全 Linux Docker
容器安全拾遗 - Rootless Container初探
Docker和Kubernetes已经成为企业IT架构的基础设施,安全容器运行时越来越被关注。近期Docker 19.03中发布了一个重要的特性 “Rootless Container”,在提升容器的安全隔离性和可管理性方面前进了一大步。
7482 1
|
2月前
|
移动开发 数据管理 HTML5
Twaver-HTML5基础学习(22)层管理容器(LayerBox)、告警管理容器(AlarmBox)、列管理容器(ColumnBox)、属性管理容器(PropertyBox)
本文介绍了Twaver HTML5中的多种管理容器:层管理容器(LayerBox)、告警管理容器(AlarmBox)、列管理容器(ColumnBox)和属性管理容器(PropertyBox)。文章解释了这些容器的作用、如何获取它们,并提供了一些基本的操作方法。这些容器分别用于管理图层、告警、表格列和属性对象,是TWaver中数据管理和组织的重要部分。
35 1
教你快速上手Flex弹性盒布局(容器属性)(二)
教你快速上手Flex弹性盒布局(容器属性)
|
6月前
|
Java 容器
Java常用组件、容器与布局
Java常用组件、容器与布局
112 0
|
XML 存储 前端开发
解析 SpringMVC 父子容器及九大内置组件加载过程
解析 SpringMVC 父子容器及九大内置组件加载过程
111 1
|
前端开发 容器
前端——父容器根据子容器的高度自动变化高度(自适应)
前端——父容器根据子容器的高度自动变化高度(自适应)
|
JavaScript 容器
教你快速上手Flex弹性盒布局(容器属性)(一)
教你快速上手Flex弹性盒布局(容器属性)
教你快速上手Flex弹性盒布局(容器属性)(三)
教你快速上手Flex弹性盒布局(容器属性)
|
算法 JavaScript Java
CheerpJ相当于一个容器,效果类似Applet
CheerpJ相当于一个容器,效果类似Applet
95 0
flex布局之容器元素属性
flex布局之容器元素属性