java - 如何使用 Java SWT .setBackground() 方法

标签 java swt

我正在尝试学习如何使用 Eclipse 使用 Java 和 Java SWT 库,但是,我找不到任何可以更改 shell 背景颜色的东西。这是我到目前为止的代码:

Display display = new Display();
Shell shell = new Shell(display);
shell.setBackground(SWT.COLOR_BLACK);

但是,这始终会引发一个问题。这是最好的方法吗?如果是,我该如何让它发挥作用。或者有更好的方法吗?如果有,它是什么?

最佳答案

setBackground 是用于设置背景颜色的正确 API。

但是,添加到 shell 的控件通常不会继承背景颜色,因此 shell 背景可能会被隐藏。您可以使用 setBackgroundMode API 更改此行为:

shell.setBackground(display.getSystemColor(SWT.COLOR_BLACK));

shell.setBackgroundMode(SWT.INHERIT_DEFAULT);

另请注意,如果您的代码是 Eclipse 插件的一部分,则 Eclipse CSS 样式可能会覆盖颜色。

关于java - 如何使用 Java SWT .setBackground() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59134664/

相关文章:

java - VM 服务器上的 Web 应用程序 ERR_CONNECTION_REFUSED

java - 使用 Websphere 共享库时 Hibernate java.lang.ClassCastException : _$$_javassist_856 cannot be cast to javassist. util.proxy.Proxy

java - com.sun.mail.iap.ParsingException : BODYSTRUCTURE parse error: bad `` size'' element

java - 删除树的节点时出现堆栈溢出错误

java - 在我的 swt 表上获取数据库表结果集

java - SWT 表 : auto resize all columns

java - 如何在 Object 类中创建 Next() 方法

java - JLS 是否将静态方法和静态变量视为类成员?

java - Eclipse - JFace 表列未显示在自定义对话框中

java - 事件无限循环 SWT