Как прокрутить оставшиеся вкладки до видимых после удаления одной вкладки из хвоста JTabbedPane с установленной политикой макета вкладок SCROLL_TAB_LAYOUT.
Поведение по умолчанию, похоже, ничего не делает - пользователь вынужден использоватькнопки прокрутки, чтобы вернуть оставшиеся вкладки в вид (вся строка вкладок становится пустой).
Вы можете понять, что я имею в виду, если несколько раз нажать кнопку «Удалить» в моем примере.Если вы удалите достаточно вкладок, вы в конечном итоге получите пустую строку вкладок.
import java.awt.BorderLayout;
import java.awt.event.*;
import javax.swing.*;
public class FooTest extends JFrame {
public FooTest() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new BorderLayout());
final JTabbedPane tabs = new JTabbedPane();
tabs.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
add(tabs, BorderLayout.CENTER);
for (int i = 0; i < 10; i++) {
tabs.addTab("Long tab name " + i, new JPanel());
tabs.setSelectedIndex(i);
}
JButton button = new JButton("Remove");
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if (tabs.getTabCount() > 0) {
tabs.removeTabAt(tabs.getTabCount() - 1);
}
}
});
add(button, BorderLayout.PAGE_END);
setSize(400, 400);
setLocationRelativeTo(null);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new FooTest().setVisible(true);
}
});
}
}
![blank tab row](https://i.stack.imgur.com/bKzuJ.png)
Другими словами, как мне обеспечить видимостькак можно больше вкладок после удаления из хвоста?