草庐IT

SysUI各个组件

全部标签

java - 如何删除容器的所有子组件?

我有一个带有JPanel的swing应用程序,它充当我的应用程序的View端口。当用户单击菜单项或按钮并在其中创建新组件时,我希望我的应用程序删除视口(viewport)内的所有组件。我知道如何从容器中删除组件,目前尚不清楚哪个组件在视口(viewport)内,所以我认为我不能使用以下代码:viewport.remove(component);viewport.revalidate();viewport.repaint();我的问题:如何在不知道要移除哪个组件的情况下移除容器内的所有组件?这种移除所有组件并创建其他组件并将它们插入视口(viewport)的方法是否正确?

Java:如何从 AbstractAction 对象引用 GUI 组件?

通常需要根据另一个GUI对象的状态来更改其他GUI对象的行为。例如。按下按钮时,标签应更改其名称。但是,当我使用像JButtonmyButton=newJButton(myButtonAction);这样的AbstractAction对象时,我需要在继承自AbstractAction的对象中引用GUI对象。我应该只在GUI中创建AbstractAction对象,然后将所有必要的GUI引用传递给AbstractAction对象,还是这会被认为是不好的风格?为了使它更具体://AbstractActionpublicclassMyActionextendsAbstractAction{pu

java - 如何将 Swing 组件添加到 SWT 中?

我想在使用SWT的代码中添加一个Swing组件(JTree)。有什么办法可以做到这一点吗?我知道我们在SWT/Jface中有TreeViewer组件,但我有一个已经开发的Jtree实现并且想添加它,而不是使用TreeViewer重写。 最佳答案 您可以使用SWT/AWTBridge.Compositecomposite=newComposite(parent,SWT.EMBEDDED|SWT.NO_BACKGROUND);Frameframe=SWT_AWT.new_Frame(composite);SWT_AWT.newFrame

java - 如何让 FlowLayout 像其他组件一样在底部对齐 JPanel?

我有一个案例,我将JPanel添加到FlowLayout,但它们没有将自己对齐到布局的底部。我正在使用此layout.setAlignOnBaseline(true)并将JLabel正确对齐到面板底部。但是,一旦这些标签本身包裹在面板中,它就不再有效了。这是我的意思的示例,顶部和底部有两个面板。importjavax.swing.*;importjava.awt.*;publicclassBadLayout{privatestaticfinalFontfont1=newFont("Arial",Font.BOLD,14);privatestaticfinalFontfont2=newF

java - Java swing 的文件浏览器组件

有没有人遇到过用于JavaSwing的完全可定制(与所有标准LnF兼容)的快速文件浏览器组件?在设计UI时,我应该能够将此组件放置到NetbeansUI调色板中并拖放到任何JPanel中。它还应该支持目录、单个文件、多个文件选择以及文件类型过滤。一定有什么东西,因为我在jEdit等应用程序中看到了这一点。请注意,我不是在问像JFileChooser这样的对话框,而是像组件这样的浏览器/资源管理器/TreeView。 最佳答案 这是一个在JPanel中构建的相对简单的文件系统浏览器:FileTree这里有几个更复杂的文件浏览器示例,带

java - 我可以确定是否在复合组件中定义了 JSF2 构面吗?

我正在创建一个JSF2Facelets复合组件。如果定义了特定的方面,我希望HTML以不同的方式呈现。有什么方法可以检查是否存在?已为复合组件定义? 最佳答案 是的,您可以使用UIComponent#getFacets()通过名称获取所有方面的映射。所以你需要做的就是检查map值是否不为空。Thefacetwithname"foo"hasbeendefiniedforthiscomposite! 关于java-我可以确定是否在复合组件中定义了JSF2构面吗?,我们在StackOverfl

java - SetVisible(false) 更改面板中组件的布局

当我将其中一个子面板设置为不可见时,如何使主面板中的子面板保持原样?我的样子:[(Panel1)(Panel2)(Panel3)(Panel4)]当我执行panel3.setVisible(false)时,它看起来像:[(Panel1)(Panel2)(Panel4)]我希望它看起来像:[(Panel1)(Panel2)(Panel4)]我正在使用GridBagLayout,我的mainPanel声明如下所示:finalJPanelpanel=newJPanel(newGridBagLayout());GridBagConstraintsc=newGridBagConstraints(

java - 如何在特定位置放置组件?

如何将布局中的组件放置在特定位置。就像我想在第一行中放置2个文本框,在3个组合框下方。但是当我试图将它们全部显示在一行中时,我使用了流式布局。我也用过边框。当我调整大小时,组件的窗口大小超出了边界。你能给我一些布局建议以及如何使用吗?这是我的代码:topPanel=newJPanel();topPanel.setLayout(newFlowLayout());topPanel.setBorder(newTitledBorder(newEtchedBorder(),"CustomerData"));CNameTextField=newJTextField(20);//createtheC

java - 跨面板对齐 Swing 组件

我们有一个包含多个JPanel的JPanel,其中包含JComponents(比方说JLabels和JTextboxes)在每个内部JPanel中,我们使用JGoodiesLayout以确保所有标签的正确对齐。当然,我们希望所有标签在它们所在的子面板上独立对齐。如果不固定包含JLabel的列的宽度,我们如何做到这一点?我们不能松开JPanel,因为我们必须在组件组周围设置边框。 最佳答案 我建议使用平面布局而不是嵌套布局。在单个布局中对齐很容易。避免TitledBorders并用带标题的分隔符、分隔符或只是空白替换它们。这对绝大多数

JAVA Swing GUI 组件如何使用 RTL View ?

如何从NetBeans桌面应用程序为阿拉伯语制作我的JavaSwingGUI组件[从右到左]? 最佳答案 难道你只需要使用:Component.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT)我相信swing组件都已经支持RTL,不是吗?不过,对于netbeans,您不确定如何/在何处执行此操作。 关于JAVASwingGUI组件如何使用RTLView?,我们在StackOverflow上找到一个类似的问题: