这很简单,我来自swing / awt背景。
我只是想知道为SWT小部件设置背景颜色的正确方法是什么?
我一直在努力:
widget.setBackground( );
除了我不知道如何在SWT中创建颜色对象?
答案 0 :(得分:80)
对于标准颜色(包括操作系统使用的常用颜色和默认颜色)使用Display.getSystemColor(int)
,并将SWT.COLOR_*
常量传递给您想要的颜色。
Display display = Display.getCurrent();
Color blue = display.getSystemColor(SWT.COLOR_BLUE);
Color listBackground = display.getSystemColor(SWT.COLOR_LIST_BACKGROUND);
请注意,您不需要处理这些颜色,因为SWT会创建它们。
答案 1 :(得分:55)
要创建颜色,请尝试以下操作:
Device device = Display.getCurrent ();
Color red = new Color (device, 255, 0, 0);
答案 2 :(得分:10)
请记住,在SWT中,您必须明确处置完成后创建的所有资源。这包括小部件,字体,颜色,图像,显示,打印机和GC。如果您不处理这些资源,最终您的应用程序将达到操作系统的资源限制,应用程序将停止运行。