Windows 7 Windows 7与Windows XP中的SWT设置前景

Windows 7 Windows 7与Windows XP中的SWT设置前景,windows-7,swt,Windows 7,Swt,我们有在WindowsXP上使用setForeground方法的SWT应用程序,它们运行良好。然而,在Win7上运行最新的稳定SWT JAR和DLL似乎表明setForeground方法被忽略。我知道javadoc说这是一个提示,但我想知道这是否是因为XP和7之间发生了变化,或者可能是因为我新安装的Win7上的系统设置 我发现了这篇文章:,但主要答案明确地说,在Windows上忽略了setForeground,这在XP中是不正确的。此外,我们的问题似乎并不局限于按钮。同样的问题也发生在团体中

我们有在WindowsXP上使用setForeground方法的SWT应用程序,它们运行良好。然而,在Win7上运行最新的稳定SWT JAR和DLL似乎表明setForeground方法被忽略。我知道javadoc说这是一个提示,但我想知道这是否是因为XP和7之间发生了变化,或者可能是因为我新安装的Win7上的系统设置

我发现了这篇文章:,但主要答案明确地说,在Windows上忽略了setForeground,这在XP中是不正确的。此外,我们的问题似乎并不局限于按钮。同样的问题也发生在团体中

显然,通过添加一个直接操纵GC以适当颜色重新绘制文本的paint listener,这是一个不实用的解决方法,除了不实用之外,因为这意味着我们必须将此listener添加到我们使用按钮的数千个位置


谢谢您的帮助。

这与您的系统设置无关。只是,正如您所猜测的,XP和7之间发生了一些变化。实际上,它在XP和Vista之间发生了变化。不幸的是,除了你提到的黑客攻击,你对此无能为力


有关更多信息,请参阅。

进一步的调查表明,这不是XP和Windows 7之间的区别,而是经典主题与Aero或XP主题的区别。如果我们在XP中使用XP主题,按钮前景也无法设置