Я создал одну JTabbedPane с 3 вкладками. Когда я переключаюсь на разные вкладки, stateChang не отвечает на щелчок. , когда я помещал отладочную метку в мой код в боковом публичном пустоте stateChanged(ChangeEvent e) { }
, я не вижу эффекта после нажатия.Почему JTabbedPane не отвечает на щелчок на вкладке?
Что может быть причиной и как я могу исправить это?
public class TabbedPanChangeListener implements ChangeListener {
ConfigToolScannersPanel panel;
List<String> artikels = GenericsUtil.makeList();
public TabbedPanChangeListener(ConfigToolScannersPanel configToolScannersPanel) {
this.panel = configToolScannersPanel;
}
public void stateChanged(ChangeEvent e) {
WebTabbedPane sourceTabbedPane = (WebTabbedPane) e.getSource();
int index = sourceTabbedPane.getSelectedIndex();
String titel = sourceTabbedPane.getTitleAt(index);
File dirconfig = new File("C:\\tmp\\config");
File dirPictures = new File("C:\\tmp\\Pictures");
File diraxi = new File("C:\\tmp\\");
File artikels = new File("C:\\tmp\\artikels.csv");
if (dirconfig.exists()) {
if (titel.equalsIgnoreCase("ftp")) {
panel.updateUI();
} else if (titel.equalsIgnoreCase("Picture")) {
setSelectedFileToNull();
BorderLayout layout = (BorderLayout) panel.pictureTabPanel.getLayout();
panel.pictureTabPanel.remove(layout.getLayoutComponent(BorderLayout.WEST));
panel.pictureTabPanel.add(FileList.getGui(dirPictures.listFiles(), true, panel), BorderLayout.WEST);
panel.pictureTabPanel.remove(layout.getLayoutComponent(BorderLayout.NORTH));
panel.pictureTabPanel.add(FileList.getGui(diraxi.listFiles(), false, panel), BorderLayout.NORTH);
panel.pictureTabPanel.remove(layout.getLayoutComponent(BorderLayout.CENTER));
// *** Add and remove from tool bar ***
visibaleInvisibale(false);
panel.btnDelete.setVisible(true);
panel.btnDelete.setAction(new DeletePictureAction(panel));
panel.btnAdd.setVisible(true);
panel.btnAdd.setAction(new AddPictureAction(panel));
panel.updateUI();
} else if (titel.equalsIgnoreCase("dienst")) {
}
}
}
* «Почему JTabbedPane не отвечает на щелчок на вкладке?» * Возможно, лучший вопрос: зачем вам нужно выявлять такие изменения? Я написал не менее 10 GUI, включая экземпляры JTabbedPane, и никогда не нуждался в этом. –