java - 为什么在 linux 中缺少最大化和最小化选项,但在 windows 中工作

标签 java linux swt fedora

我编写了一个 Java SWT (GUI) 程序来显示 shell 窗口,我在 Eclipse 中运行它,我使用的是 Fedora 17 操作系统。

我得到的输出在该窗口中缺少最大化和最小化选项。但我在 Windows 7 中尝试过它,它给了我正确的输出而没有遗漏任何东西。

请有人告诉我,为什么它在 Fedora 17 中丢失了,纠正它的解决方案是什么?

这是代码:

import org.eclipse.swt.SWT;

import org.eclipse.swt.widgets.Display;

import org.eclipse.swt.widgets.Label;

import org.eclipse.swt.widgets.Shell;


public class Example {

    public static void main(String[] args) {
        Display display = new Display();
        Shell shell = new Shell(display,SWT.MAX|SWT.MIN);
        Label label1 = new Label(shell,SWT.NONE);
        label1.setText("CLEAR IT OUT PLEASE");
        label1.setBounds(50,30,200,30);
        shell.pack ();
        shell.setSize(315,200);
        shell.open ();
        while (!shell.isDisposed ()) {
            if (!display.readAndDispatch ()) display.sleep ();
        }
        display.dispose ();
         }
}

最佳答案

Fedora 17 使用 GNOME 3.4,如果您使用的是 GNOME 3,则默认窗口管理器 (gnome shell) 没有最小化或最大化图标(我知道,这是非常愚蠢的。)如果这确实是您的问题有了,尝试在您的发行版上安装 gnome-tweak-tool:

https://askubuntu.com/questions/125765/how-do-i-add-minimize-maximize-buttons-to-gnome-shell-windows

如果你read more about SWT ,您会看到它使用主机操作系统的 native GUI 库来显示图形元素,因此您将受制于窗口管理器的突发奇想,而使用 Swing 之类的东西可能不会。

关于java - 为什么在 linux 中缺少最大化和最小化选项,但在 windows 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15151538/

相关文章:

java - 为不同的 IWizardPages 设置不同的窗口标题

java - 在TitleAreaDialog中输入删除StyledText

java - MySQL 工作台未连接到数据库

java - 如何将 POST 变量传递到运行 lambda 函数的 AWS API 网关?

linux - 如何根据第 6 个字段内容 grep 行

linux - awk 从 mtjoseph :6/MKTCzMS/YU. 中提取 "Matthew":10974:10060:Matthew

java - 如何解决 "import org.eclipse.wb.swt.SWTResourceManager"

java - 错误对话框.show();警报对话框

java - 小程序访问JDialog信息

linux - 如何在 Linux 中创建虚拟以太网设备?