【发布时间】:2013-07-23 14:49:04
【问题描述】:
我正在尝试遍历每个项目包含的 JList: JPanel - 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);
}
我得到的输出是:
项目 = javax.swing.JPanel[,0,0,0x0,invalid,layout=java.awt.FlowLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=9,maximumSize=,minimumSize=,preferredSize=]
相反,我想访问 JPanel 内的文本。
这是怎么做到的?
编辑: 这就是我将 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);
所以我想找到的文字是“你好”
【问题讨论】:
-
面板里面有什么文字??什么属性?
-
@JBNizet,请您使用礼貌和专业的语言。
-
对不起,我还是 Java 新手。但是,必须能够以某种方式访问 JLabel 中存储的内容,这些内容存储在 JPanel 中
-
阅读 Oracle 教程如何使用 List 和如何使用 Tables for Renderers 概念(JTable、JList、JComboBox 相同/非常相似)
-
Edit: This is how i add my JPanel to the JList- 与我上面的评论相同,并且(没有任何更改评论)@JBNizet,
标签: java swing jlist listcellrenderer