【问题标题】:Java Swing bug/error created by IntelliJ IDEA WindowbuilderIntelliJ IDEA Windowbuilder 创建的 Java Swing 错误/错误
【发布时间】:2016-03-06 20:28:16
【问题描述】:

我使用 IntelliJ IDEA 15 并创建了这个窗口。 它是一个 Java swing 应用程序。

  1. 我的 GUI 显示了这个错误。我不知道为什么。我尝试重新绘制/重新验证/验证,但没有任何帮助。

如果我改变鼠标位置,错误就会跟随

2. 为什么我的背景是黑色的?在这里你可以看到错误。

请帮帮我

主要的启动方法

public class Launch {
    public static void main(String[] args) throws URISyntaxException {
        WebLookAndFeel.install();
        Main main = new Main();
        main.setUndecorated(true);
        main.setVisible(true);
        main.pack();
    }
}

这是我的构造函数

public Main() throws URISyntaxException {
    setRealFeel();
    setContentPane(mainPanel);
    setMinimumSize(new Dimension(400, 300));
    setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
    Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
    setLocation(((dim.width / 2) - 200), ((dim.height / 2) - 150));
    ComponentResizer cr = new ComponentResizer();
    cr.registerComponent(this);
    cr.setSnapSize(new Dimension(10, 10));
    cr.setMinimumSize(new Dimension(400, 300));
    mainMenu.setVisible(false);
    loadingPanel.setVisible(false);
    this.mainFrame = this;
    closeLabel.setIcon(closeImage);
    closeLabel.setText("");
    miniLabel.setIcon(minimizeImage);
    miniLabel.setText("");
    maxSizeLabel.setIcon(maximizeImage);
    maxSizeLabel.setText("");
    maxSizeLabel.setVisible(false);
    this.checkBoxMap = new HashMap<String, JCheckBox>();
    this.calendarMap = new HashMap<String, Calendar>();

    this.content.setLayout(new CardLayout());
    this.content.add("login", loginPanel);
    this.content.add("index", indexPanel);
    this.cardLayout = (CardLayout) content.getLayout();

    this.indexPanel.setLayout(new CardLayout());
    this.indexPanel.add("calendar", calendarPanel);
    this.indexPanel.add("customer", customerPanel);
    this.indexPanel.add("employee", employeePanel);
    this.indexCardLayout = (CardLayout) indexPanel.getLayout();


    titlePanel.addMouseListener(new MouseAdapter() {
        public void mousePressed(MouseEvent me) {
            // Get x,y and store them
            pX = me.getX();
            pY = me.getY();

        }

        public void mouseDragged(MouseEvent me) {
            setLocation(getLocation().x + me.getX() - pX,
                    getLocation().y + me.getY() - pY);
        }
    });

    titlePanel.addMouseMotionListener(new MouseMotionAdapter() {
        public void mouseDragged(MouseEvent me) {
            setLocation(getLocation().x + me.getX() - pX,
                    getLocation().y + me.getY() - pY);
        }
    });

    /*Image Hover*/
    closeLabel.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseClicked(MouseEvent e) {
            super.mouseClicked(e);
            Close close = new Close();
            close.setVisible(true);
        }

        @Override
        public void mouseEntered(MouseEvent e) {
            super.mouseEntered(e);
            closeLabel.setIcon(closeImageHover);
            repaint();
        }

        @Override
        public void mouseExited(MouseEvent e) {
            super.mouseExited(e);
            closeLabel.setIcon(closeImage);
            repaint();
        }
    });

    miniLabel.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseClicked(MouseEvent e) {
            super.mouseClicked(e);
        }

        @Override
        public void mouseEntered(MouseEvent e) {
            super.mouseEntered(e);
            miniLabel.setIcon(minimizeImageHover);
            repaint();
        }

        @Override
        public void mouseExited(MouseEvent e) {
            super.mouseExited(e);
            miniLabel.setIcon(minimizeImage);
            repaint();
        }
    });

    maxSizeLabel.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseClicked(MouseEvent e) {
            super.mouseClicked(e);
        }

        @Override
        public void mouseEntered(MouseEvent e) {
            super.mouseEntered(e);
            maxSizeLabel.setIcon(maximizeImageHover);
            repaint();
        }

        @Override
        public void mouseExited(MouseEvent e) {
            super.mouseExited(e);
            maxSizeLabel.setIcon(maximizeImage);
            repaint();
        }
    });

    impactImage.setIcon(loginImage);
    btnLink.setText("Impact WebDesign");
    btnLink.addActionListener(new OpenUrlAction());

    loginButton.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            (new Thread(new Login(textField1.getText(), passwordField1.getPassword(), mainFrame))).start();
        }
    });
}

【问题讨论】:

  • 对您的代码一无所知,我们无能为力。这是一个 Java Swing 应用程序吗?它是 JavaFX 应用程序吗?还是别的什么?
  • 它是一个 Java swing 应用程序
  • 你的代码是什么样的?

标签: java swing user-interface intellij-idea


【解决方案1】:

我明白了……这是一个图形错误。我在我的笔记本电脑上测试它,一切都很好......

谢谢

【讨论】:

    猜你喜欢
    • 2014-01-24
    • 2013-08-08
    • 1970-01-01
    • 2018-02-01
    • 2014-06-22
    • 1970-01-01
    • 1970-01-01
    • 2019-07-19
    相关资源
    最近更新 更多