java如何衔接不同文件中的swing组件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java如何衔接不同文件中的swing组件相关的知识,希望对你有一定的参考价值。
java如何衔接不同文件中的swing组件:1、JFrame,JDialog,JWindow与JApplet这四个组件我们统称为最上层(Top-Level)组件,因为其余的Swing组件都必须依附在此四组件之一上才能显示出来。 2、最上层的四个组件都实现了RootPaneContainer接口,RootPaneContainer定义了各种容器取得与设置的方法,这里的容器包括JRootPane,GlassPane,LayeredPane,和ContentPane。 参考技术A 1.新建文件。选择类别为Swing Gui窗体,类型为JFrame窗体。建立了窗体应用程序后,将产生两个文件,.form文件和.java文件,其中.form有点类似于xml文件,它保存了应用程序界面设计的相关参数,而java文件是应用程序类,它是JFrame的子类。
2.在设计模式下,可以通过拖放的方式,从右边的组件面板把需要的各种组件放到窗体上,并合理摆放好组件。
3.设置各组件的具体属性
4.设置各组件的关联事件。设置"进入xxx"按钮的事件。我们开发者还可以直接双击控件,进入该控件的actionPerformed事件处理程序。
在代码设计模式下,编写事件处理方法。
如何在 Java Swing 中获取面板的所有组件?
【中文标题】如何在 Java Swing 中获取面板的所有组件?【英文标题】:How can I get all the components of a panel in Java Swing? 【发布时间】:2013-03-21 14:17:59 【问题描述】:在 C# 中有没有类似 foreach
的方法来处理 JPanel 的所有子组件?
【问题讨论】:
在询问之前,有时尝试显而易见的事情是值得的...... :) 你知道有 api 文档,你知道吗:-) 提示:还要看看从 super 继承的方法。 【参考方案1】:你可以使用getComponents
的方法:
Component[] components = jpanel.getComponents();
【讨论】:
这将获取子组件,而不是那些组件的子组件。例如,如果您的面板具有诸如 CollapsiblePanel 之类的容器,则集合components
将包含对该 CollapsiblePanel 的引用,但不包含其子组件。【参考方案2】:
如果您有多个 JPanel 并且想要获取所有组件名称,请尝试以下操作:
public void getAllComponetsNameInJPanels(JPanel... panels)
Component[] components;
String componentName;
for (JPanel panel : panels)
components = panel.getComponents();
for (Component compo : components)
componentName = compo.getClass().getName();
System.out.println(compo.getClass().getName().substring(componentName.indexOf("swing.") + "swing.".length(), componentName.length()));
System.out.println("=====================");
【讨论】:
以上是关于java如何衔接不同文件中的swing组件的主要内容,如果未能解决你的问题,请参考以下文章
Java中Swing组件中的JTextArea,JList控件中的滚动条问题?帮忙解决!
java swing 中的列表框JList如何在程序中动态的添加和删除元素