У меня есть JTabbedPane myTab внутри моего JFrame. Его первая вкладка имеет название «старое название». Я хочу изменить название динамически, поэтому я использую этот код, чтобы установить:JTabbedPane: изменить размер вкладки при изменении вкладки вкладки
myTab.setTitleAt(myTab.getSelectedIndex(), "my full new title");
И как-то мой новый титул больше, чем мой старый друг. Проблема в том, что размер вкладок не изменяется, и он не отображает новый заголовок полностью, только «мой полный n ...».
И если я нажму на вкладку, то на вкладке появится полный новый заголовок.
Я уже попробовал этот код тоже, чтобы установить имя название:
myTab.setTabComponentAt(myTab.getSelectedIndex(), new JLabel("my full new title"));
Этот код может помочь мне изменить размер табуляции соответственно на новое название. Но крест (x), чтобы закрыть вкладку, больше не существует.
Кто-нибудь знает, как изменить размер вкладки при изменении названия вкладки, но все-таки сохранить опцию закрытия вкладки?
Спасибо и очень ценю!
Спасибо. Я выяснил, что моя проблема заключается в том, что Im использует мой собственный класс, расширяя JPanel, чтобы создать компонент вкладки с крестом: ButtonTabComponent расширяет JPanel(); setTabComponentAt (индекс, новый ButtonTabComponent (this)); и мой ButtonTabComponent не реализуют функцию updateUI – baizen
Мое решение: ((ButtonTabComponent) myTab.getTabComponentAt (myTab.getSelectedIndex())). UpdateUI(); – baizen
лучше один раз посмотреть, как .... – mKorbel