我有一个JPanel
与10x10 GridLayout
的JLabels
,并且当用户单击其中一个标签时,我希望能够获取该行和他们点击的单元格列(或布局中的索引,如果更方便的话)。如果有人知道如何做到这一点,或有任何建议,任何帮助,非常感谢。在JLabels的网格布局中获取元素的位置(行和列)java
谢谢!
我有一个JPanel
与10x10 GridLayout
的JLabels
,并且当用户单击其中一个标签时,我希望能够获取该行和他们点击的单元格列(或布局中的索引,如果更方便的话)。如果有人知道如何做到这一点,或有任何建议,任何帮助,非常感谢。在JLabels的网格布局中获取元素的位置(行和列)java
谢谢!
使用组合并将此结构包装到POJO中,每个标签都有一个注册的MouseListener
...这是一个基本的管理对象,或者可以使用JTable
。
当您创建的标签,你可以用自己的“名称”属性来保存的ID
for(int x ....)
{
...
label[x] = new JLabel(...);
label[x].setName(String.valueOf(x));//<------------
...
}
,如果你的getSource()通过的MouseListener,您可以再投源的JLabel然后label.getName()
这将返回一个可以解析为int的字符串。
感谢您的快速回复!如果您不介意,一个简短的例子对于这个主题的新手来说非常棒。 :) – iphonedev7
@ iphonedev7:对于JTables,请看[这里](http://docs.oracle.com/javase/tutorial/uiswing/components/table.html)。 1+到mre。 –
所以我认为我有这个正确的,但随时纠正我......所以我创建一个'JTable',然后将它添加到'JPanel'? – iphonedev7