我需要在MouseOver上更改JtabbedPane选项卡的文本颜色。
可以使用鼠标侦听器还是有任何不同的属性来执行此操作?
由于 乔蒂
答案 0 :(得分:2)
没有内置属性或方法来执行此操作。
一个选项是创建一个自定义JLabel(或其他组件)添加一个MouseListener,它将改变鼠标进入/退出时的颜色。
示例,如下所示:
class CustomMouseOverJLabel extends JLabel{
public CustomMouseOverJLabel(String text) {
super(text);
addMouseListener(new MouseAdapter(){
@Override
public void mouseEntered(MouseEvent e) {
setForeground(Color.BLUE);
}
@Override
public void mouseExited(MouseEvent e) {
setForeground(Color.RED);
}
});
}
}
然后当你调用addTab(title,item)时,还要设置自定义标题组件,如下所示:
yourTabbedPane.setTabComponentAt(index, new CustomMouseOverJLabel("title"));
答案 1 :(得分:0)
tabbed pane tutorial有一个标签示例,其中包含可能有用的自定义组件。