【问题标题】:JToolbar background imageJToolbar 背景图片
【发布时间】:2010-01-01 20:24:25
【问题描述】:

我正在使用使用以下代码的自定义 JToolbar:

public class GeneralToolbar extends JToolBar{

  public GeneralToolbar() {
    super();
    setBackground(Color.white);
    setOpaque(true);
    setPreferredSize(new Dimension(54,54));
    setMinimumSize(new Dimension(54,54));
    setMaximumSize(new Dimension(54,54));
    setSize(new Dimension(54,54));
  }

  public void paintComponent(Graphics g) {
    super.paintComponent(g);
    Dimension size = this.getSize();
    ImageIcon image = DefaultAction.createImageIcon("/com/aaa/resources/tabback");
    g.drawImage(image.getImage(), 0,0, size.width, size.height, this);
  }
}

现在可以看到图像了。但是我的按钮周围有一个不透明的矩形。 我试图将按钮 opaque 设置为 false,但它没有增加任何影响。 感谢您的支持

【问题讨论】:

    标签: java swing jtoolbar


    【解决方案1】:

    也许你需要使用:

    button.setBorderPainted( false );
    button.setContentAreaFilled( false );
    

    当然当你去掉Border之后,你就看不到点击按钮的效果了。

    如果您需要更多帮助,请发布您的 SSCCE 以显示问题。

    【讨论】:

      【解决方案2】:
      public GeneralToolbar() {
          super();
          setBackground(Color.white);
          setOpaque(true);
          setPreferredSize(new Dimension(54,54));
          setMinimumSize(new Dimension(54,54));
          setMaximumSize(new Dimension(54,54));
          setSize(new Dimension(54,54));
      }
      public void paintComponent(Graphics g) {
          super.paintComponent(g);
         Dimension size = this.getSize();
         ImageIcon image = DefaultAction.createImageIcon("/com/aaa/resources/tabback");
         g.drawImage(image.getImage(), 0,0, size.width, size.height, this);
       }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-16
        • 1970-01-01
        • 2019-03-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多