不同选项卡中的Java Swing重用按钮

不同选项卡中的Java Swing重用按钮,java,swing,tabs,jbutton,jtabbedpane,Java,Swing,Tabs,Jbutton,Jtabbedpane,我有一个关于挥杆的简单问题。好的,假设我有一个有两个选项卡的应用程序,我可以从一个选项卡切换到另一个选项卡。例如,我希望在这些选项卡中有字段和按钮 表1 Tab1; field1 field2 AddButton 表2 Tab2; field1 field2 AddButton 我在这些按钮上附加了actionListeners,因为我要扩展应用程序并创建另一个选项卡,所以我想多次使用AddButton。但是,我希望AddButton根据选项卡实现不同的逻辑。例如,如果我按下它并且我在ta

我有一个关于挥杆的简单问题。好的,假设我有一个有两个选项卡的应用程序,我可以从一个选项卡切换到另一个选项卡。例如,我希望在这些选项卡中有字段和按钮

表1

Tab1;
field1
field2 
AddButton
表2

Tab2;
field1
field2
AddButton
我在这些按钮上附加了
actionListeners
,因为我要扩展应用程序并创建另一个选项卡,所以我想多次使用
AddButton
。但是,我希望
AddButton
根据选项卡实现不同的逻辑。例如,如果我按下它并且我在
tab1
,逻辑可能是
“将字段1插入tab1.TABLE”
,如果我在TAB2上并按下它-
“将字段1插入TAB2.TABLE”
,等等


我的问题是-是否有一种简单的方法可以根据按下的标签重复使用按钮,或者我应该为每个新标签制作一个新按钮(对我来说,这似乎是很多意大利面代码…)。或者我应该制作一个通用的按钮界面,然后用每个菜单的按钮来实现它?

任何swing组件都可能只放在一个容器中。因此,不同选项卡上不能有相同的按钮。但您可以有几个相同类的实例,例如,为每个选项卡创建自己的按钮不是意大利面代码。每个按钮都响应自己的动作。当然,如果操作与执行的sql查询不同,更好的方法是将常用方法封装到超类中,并在子类中或通过构造函数参数指定查询。

您可以使用自己的类扩展JButton,并在其中设置常用属性。然后为每个选项卡创建它的实例。所以我应该为每个选项卡创建两个AddButton,对吗?第一个是表1中的插入查询,第二个是表2中的插入查询-这是一个好方法吗?@user3240544是的,很少有按钮不是swing应用程序的最大问题。