当前位置: 首页 > 知识库问答 >
问题:

Java通过包含JPanel-JLabel的JList进行迭代

薛栋
2023-03-14

我试图遍历一个JList,其中每个项目都包含:JGroup-JLabel

目前我拥有的是:

System.out.println("Reading all list items:");
System.out.println("-----------------------");
for (int i = 0; i < menuList.getModel().getSize(); i++) {
     Object item = menuList.getModel().getElementAt(i);;
     System.out.println("Item = " + item);
} 

我得到的结果是:

Item=javax。摆动JPanel[,0,0,0x0,无效,layout=java.awt.FlowLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=9,maximumSize=,minimumSize=,preferredSize=]

取而代之的是,我想访问J面板内的文本。

这怎么可能呢?

编辑:这是我如何将我的JPanel添加到JList的

        menuList = new JList(v);
        v = new Vector <String> ();
        menuList.setListData(v);
.....

    // get our images
    Icon pingImage = new javax.swing.ImageIcon(getClass().getResource("/resources/icnNew.png"));

    // add the images to jlabels with text
    JLabel pingLabel = new JLabel("Hi there", pingImage, JLabel.LEFT);

    // create the corresponding panels
    JPanel pingPanel = new JPanel(new FlowLayout(FlowLayout.LEFT));

    // add the labels onto the panels
    pingPanel.add(pingLabel);

    v.add(pingPanel);

所以我想找到的文字是“你好”

共有1个答案

穆锋
2023-03-14

然后,您需要检查JPanel中的元素。我的意思是,面板是UI元素的容器,也就是说,你需要检查元素,一旦你检查了,你需要比较它是否是一个标签,如果它是一个标签,那么你将能够得到该标签的文本。

你不能给我们看看代码吗?如果你提供代码片段,可能会更容易。

 类似资料:
  • 问题内容: 有没有办法遍历Java SparseArray(适用于Android)?我曾经很容易通过索引来获取值。我找不到一个。 问题答案: 似乎我找到了解决方案。我没有正确注意到该功能。 因此,我将使用以下内容:

  • 问题内容: 我有个简短的脚本,人们不断告诉我,我需要使用Key绑定来移动Jlabel,但我不知道该怎么做。没有人对如何以不使用键侦听器的方式实现键绑定有任何想法,或者如果添加按钮会出现问题? 问题答案: 与大多数事情一样,开始看看教程“ 如何使用键绑定”,几乎所有答案都将基于这些内容。 您可以做这样简单的事情… 正如我反复告诉您或您的同班同学一样,您不应该以这种方式使用组件。相反,您应该遵循自定义

  • 问题内容: 我有一个这样的对象: 我需要在HTML表中获取ID和名称,但是似乎很难遍历此对象。TIA。我知道我需要先到达“值数组”,然后再到达“组”对象,但是我要遍历对象和数组之间的过渡以及foreach与基于索引的迭代。 例如,我尝试了这个: 它遍历对象,但也给我没用 问题答案:

  • 问题内容: 我的目标是将MSSQL全文功能与HQL一起使用。在哪种情况下,我编写了一个特定的SQLFunction,将我的“全文”函数映射到contains函数。 但是,问题在于,在HQL中(似乎)我必须明确使用返回类型,MSSQL Contains函数不使用或不接受该返回类型。 这就是它在MSSQL中的工作方式: 这是我在HQL中使用它的想法: 这不起作用,因为HQL需要返回类型。例如,这将在H

  • 标题有点混乱,很抱歉,所以我有一个太多的数组,其中一个数组比第二个数组包含更多 所以我想做的是例如 这只会注销第一个一次,但我想要的是日志y和x长度一样多,希望这是足够清楚的

  • 我在C:drive(本地计算机)中有一个名为abc.xls的excel文件,现在在第一张表本身的excel文件中有一个如下所示的表,这个下面的表可以位于表中的任何范围内,所以我开发了下面的java程序,它将首先按行扫描整个表,然后按列扫描,并将找到TradeRef所在的单元格 下面的程序中的问题是,它捕获TradeRef所在的单元格,然后迭代列,然后以类似的方式捕获下一行并迭代列 但我要应用的逻辑