Linux(CentOS 7):显示Minimize Button的JDialog(JColorChooser,JFileChooser)

时间:2018-03-10 03:40:00

标签: linux jdialog minimize jcolorchooser

我正在使用macOS,Windows和Linux(CentOS 7)在我的Java应用程序中测试JColorChooser。

CentOS 中显示最小化,最大化和关闭按钮,仅在 macOS 中显示最大化和关闭按钮,最后在 Windows 中仅显示关闭按钮

问题是当我按下CentOS上的Minimize按钮时我需要杀死我的应用程序。

在我看来该按钮不应显示,因为当您按下应用程序时它会锁定并且不允许您再操作。

使用Windows 10

Image using Windows 10

使用macOS

Image using macOS

使用CentOS 7

Image using Linux(CentOS 7)

这里是代码:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class JDialogMinimizeButtonLinux extends JFrame {

  public JDialogMinimizeButtonLinux() {

        JButton button = new JButton("JDialog showing Minimize Button On Linux");
        button.addActionListener(new ActionListener() {
            @Override public void actionPerformed( ActionEvent evt) {
                new JColorChooser().showDialog(
            JDialogMinimizeButtonLinux.this,
            "Minimize Button Locks this Example on Linux", Color.gray);
            }
        });

    JPanel outer = new JPanel();
    outer.setLayout(new BoxLayout(outer, BoxLayout.LINE_AXIS));
    outer.add(button);
    add(outer);

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

    public static void main( String args[] ) {
        try {
            UIManager.setLookAndFeel("javax.swing.plaf.nimbus.NimbusLookAndFeel");
        } catch (ClassNotFoundException | InstantiationException |
                IllegalAccessException | UnsupportedLookAndFeelException ex) {
            System.out.println("ex:" + ex.toString());
        }
        JDialogMinimizeButtonLinux app = new JDialogMinimizeButtonLinux();
        app.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    }
}

现在问题:

只在CentOS中发生?

这被视为错误吗?

对我而言, Linux JColorChooserJFileChooser或其父级JDialog的执行情况不佳。

0 个答案:

没有答案