就我所看到的事件而言:
(1) private void jTabbedPane1StateChanged(javax.swing.event.ChangeEvent evt) {}
检查是否添加了新选项卡或删除了现有选项卡。
在谷歌上,我发现了这个代码:
(2) ChangeListener changeListener = new ChangeListener() {
public void stateChanged(ChangeEvent changeEvent) {
// my code
}
};
jTabbedPane1.addChangeListener(changeListener);
我想既然它使用了stateChanged事件,它应该做与我的第一个代码相同的事情。顺便说一句,即使在使用了这两个代码后,我也无法获得所需的结果(即当用户更改选项卡时可以调用的事件)。
有人能建议我一个好的事件[我正在使用netbeans GUI环境]来进行有效的操作吗。(我不想要任何鼠标事件)
编辑:
如果选项卡发生更改,我希望以下代码得到优化:
String send3=( jTabbedPane1.getSelectedComponent().getComponentAt(0,0)).getName();
上面的代码动态地获取jTextarea的名称(在当前选项卡中),该名称是在jTabbedPanel中动态创建的。
我刚刚检查了自己的源代码,其中addChangeListener()运行良好。每当用户或通过程序更改选项卡时,就会触发该事件。在stateChanged()
本身中,现在选择的选项卡由确定
JTabbedPane p = (JTabbedPane)e.getSource();
int idx = p.getSelectedIndex();