Java表arraylist修改

基本上这是管理属性的任务,我正在做一个比它需要的更复杂的解决方案.这只是我奋斗的最后一点.

为了让您了解我们拥有的东西:

>属性(超类)
> PropertiesToLet(扩展属性)
> PropertiesToSell(扩展属性)
> EstateAgent(用于管理属性的GUI)

所以我正在努力的部分基本上是EstateAgent类.

到目前为止我写的:http://pastebin.com/0qieM67j

这大约有500行 – 但我需要理论部分的帮助而不是编程部分 – 因为我不希望你做我的课程 – 我只需要解决方法如何处理它.

我正在努力的路线来自:
55至113

它是关于我创建并在其中插入行的表.每行代表一个属性.它可以是propertyToLet或propertyToSell对象.这些属性来自我的ArrayList< Property>属性.

插入行并显示表格很好,它的工作方式应该如此.所以代码有问题.我为代码结构道歉 – 但我们在提交中受限 – 所以我们不能提交超过4个文件,那些文件显然是命名类 – 所以我不能再将任何类或文件扩展到项目中.

所以我现在要做的是:编辑一个属性.

我有代表属性的行.它向我展示了arrayList中的位置以及我可以得到的所有值.

所以现在还有一些可能性:

>从PropertyToLet添加和删除租户
>根据租户,您可以收取租金并支付租金,并查看剩余租金.
>从PropertyToSell添加和删除购买者(如果有购买者,销售商将随之改变)

所以基本上有几种方法可以从这里继续.例如,它可能是这样的行为:

>右键单击该属性打开鼠标所在的上下文菜单,我可以选择其他选项,例如:删除租户,添加租户,收取租金,显示租金欠款,添加购买者,删除购买者—-当然取决于什么它是一种财产.
>双击一行=>编辑属性(看看这个截图)

>它显示了一个我用来添加属性的窗口 – 我可以在字段中添加所有值,该按钮更改为“更新属性”

这将是另一个解决方案:
– 编辑行的单元格=>更改属性的值(他们将检查对象,看看是否真的改变了,而不仅仅是行值)

这是我对如何注入将功能引入应用程序的最后步骤的想法.

所以这是我的问题:

而且我需要一个外部意见,在这个非常有限的任务中实现起来更容易,更快.打开现有添加窗口并将其更改为编辑窗口的方式 – 我不希望有冗余代码!
或者通过编辑单元格来更改值,以便arraylist中的值更改.

我需要一些帮助,方法更简单,更好.

我非常感谢这里的任何帮助!

我期待看到一些答案.

编辑
我完成了弹出菜单感谢您的帮助.我也编辑了这个问题.

最佳答案 从jdk5开始,将JPopupMenu附加到组件的推荐方法是

   component.setComponentPopupMenu(menu)

当用户手势(鼠标或键盘)被解释为弹出触发器时,会自动显示此弹出窗口 – 这可能因操作系统而异.

至于选择右边的一行(弹出触发器)mouseEvent:默认情况下它并没有在Swing中完成,但现在似乎是(近似)原生应用程序(在Vista上)的常态 – 可以说是在Swing中.志愿者报告,任何人;-)

点赞