我正在编写一个自己的 swt 小部件。现在我已经准备好尝试设置小部件样式的功能。
获取操作系统当前选择的实际颜色/样式的默认策略是什么?
如何在我自己的小部件中模仿操作系统样式?
我正在编写一个自己的 swt 小部件。现在我已经准备好尝试设置小部件样式的功能。
获取操作系统当前选择的实际颜色/样式的默认策略是什么?
如何在我自己的小部件中模仿操作系统样式?
您可以使用以下命令访问 SWT 的所有预定义颜色:
Color color = display.getSystemColor(SWT.COLOR_RED);
当然,这适用于所有定义为 的颜色SWT.COLOR_*
。
操作系统的默认列表背景颜色可以通过以下方式访问:
SWT.COLOR_LIST_BACKGROUND
至于模仿问题:
只要您不扩展默认小部件之一,这将很难实现。请在您的问题中添加更多细节。
为您的小部件使用以下颜色。您将获得自定义小部件的操作系统特定背景和前景。
SWT.java
* System color used to paint foreground areas (value is 21).
*/
public static final int COLOR_WIDGET_FOREGROUND = 21;
/**
* System color used to paint background areas (value is 22).
*/
public static final int COLOR_WIDGET_BACKGROUND = 22;