在半透明层下禁用滚动条滑块

时间:2013-10-29 20:45:20

标签: java swing jpanel scrollbar transparent

所以这是我的情况。我有一个jscrollpane,其中包含一些组件。 按下一个按钮后,半透明的jpanel显示覆盖我的jscrollpane。 当我将鼠标悬停在组件或滚动条上时,它们会再次出现(好像它们已经出现在半透明层的顶部,而不是停留在它下面)。

我通过使用此代码禁用它们来修复组件部分。

Component[] com = jPanel2.getComponents();
        for (int a = 0; a < com.length; a++) {
            com[a].setEnabled(false);
        }

我仍然遇到的问题是当我将鼠标悬停在其上时,我的滚动条的拇指仍会显示出来。我想我需要禁用滚动条的拇指。

任何人都可以帮我吗?

我添加了用于透明层的代码(方法)。

Transparentlayer

public class TransparentPanel extends JPanel {
{
    setOpaque(false);
}
/**
 *
 * @param g
 */
@Override
public void paintComponent(Graphics g) {
    g.setColor(getBackground());
    Rectangle r = g.getClipBounds();
    g.fillRect(r.x, r.y, r.width, r.height);
    super.paintComponent(g);
}

0 个答案:

没有答案