我正在做一个大的 Gui 项目。已经完成了很多复杂的事情,我无法更改代码的结构。由于这是一个复杂的项目,很难解释或给出 SSE,但我会尽力而为。
在我们的项目中,有些人已经实现了自己的 Table。表格中的所有单元格都是一个名为 CellPanel 的类,它扩展了JPanel
类。所以实际上所有的表格单元格都是JPanels
。这些疯狂的家伙已经实现了他们自己的 mouseClicked 函数,大约 400 行。所以我不是为了每个人的利益把它贴在这里:) 但是这种mouseClicked
方法只有在右键单击时才有效。所以我有机会做这样的事情:
public void mouseClicked(MouseEvent e) {
DropTable.selectedColorMng(rowInTable);
if(e.getButton()==MouseEvent.BUTTON1) {
System.out.println("left click");
}
else{
// 400 lines of code here
}
}
现在我想做的是这些 CellPanel 被设计为包含一个标签和一个图标。它一直是这样使用的。里面没有动态内容。但是现在我们有一个要求,我已经修改了这些 CellPanel 以包含JList
在ScrollPane
. 但是这些JLists
是不可点击的。我想滚动它们进行多项选择,但它们不响应我的左键单击。所以我想我必须填写上面代码的if语句。
但是怎么做?