0

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

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

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

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

谁能帮我这个?

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

透明层

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);
}
4

0 回答 0