当前位置:  开发笔记 > 编程语言 > 正文

setOpaque()方法

如何解决《setOpaque()方法》经验,为你挑选了2个好方法。

我想知道setOpaque()方法做什么...

这是小程序的一部分:

    public class Buttons extends JFrame implements ActionListener
    {

     private JButton button;
     private JLabel label;
     private JTextArea text;
     private String t;
     public Buttons()
     {
      super("TESTING");
      label = new JLabel("Hello!!!!");
      button = new JButton("Color Change");
      text = new JTextArea("Test");
      setLayout(new FlowLayout());
      label.setOpaque(true);
      add(button);
      add(label);
      add(text);

            LabelHandler labelHandler = new LabelHandler();

      button.addActionListener(this);
            label.addMouseListener(labelHandler);

      setSize(300,200);
      setVisible(true);
     }

     public void actionPerformed(ActionEvent e)
     {
      if (e.getSource()==button)
      {
       label.setBackground(Color.red);
      }
      if (e.getSource()==text)
      {
       if (t == "\n")
       {
        setText(t);
        label.getText();
       }
      }
     }



    class LabelHandler extends MouseAdapter
    {
     public void mouseEntered(MouseEvent e)
     {
  label.setBackground(Color.GREEN);
     }
 }

如果没有setOpaque,它就不会绘制标签.为什么?提前致谢.



1> akf..:

Swing使用opaque标志ComponentUI来测试它们是否应该绘制背景或是否应该绘制背景.如果您设置了背景颜色但没有设置setOpaque(true),则不会看到bg颜色.



2> cristis..:

以下是一些信息:http://mindprod.com/jgloss/setopaque.html

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有