【问题标题】:Java Swing CardLayout: get componente associated to a StringJava Swing CardLayout:获取与字符串关联的组件
【发布时间】:2017-06-27 15:20:19
【问题描述】:

是否有返回与 Java Swing CardLayout 中指定字符串名称关联的组件的命令?我的 CardLayuot 中有很多面板,起初是空的,在运行时我必须“更新”这些面板以在其中添加按钮(面板已经有 GridBagLayout),我不想重新制作面板并替换旧的那些,因为它会更慢充电,而是得到这些面板并添加一些东西。多谢你们! (我检查了这个,但没有什么像我需要的 https://docs.oracle.com/javase/7/docs/api/java/awt/CardLayout.html

【问题讨论】:

  • 你的意思是按名字拿到卡?
  • 是的,正是我需要的,有这样的命令吗?
  • tutorial 展示了如何做到这一点
  • 他们只使用 add(panel, string),它只是替换旧的,我更愿意得到旧的并修改它
  • 您想要实现的布局(我的意思是提供 ascii 艺术/图像和代码)是什么?您要添加多少个按钮(以及它们如何分布在 UI 中)? (为什么?)

标签: java swing cardlayout


【解决方案1】:

每个Component,比如JPanel,都有一个name字段,可以用setName()来设置。如果您的程序已经有List<JPanel>,您可以搜索列表并检查getName()。如果没有,您可以将面板添加到 Map<String, JPanel>get() 您想要的名称。

【讨论】:

  • 是的,我知道,但我想知道是否有直接命令,因为布局会自动将窗格绑定到名称
  • @GabrielLogronio:不是真的,但还有一些其他想法here
猜你喜欢
  • 2017-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多