我有一些像这样声明的切换按钮:
button = new Button(this, SWT.TOGGLE);
button.setImage(icon);
他们在我的电脑上看起来像这样:
正确的一个被推,左边的没有。
但在某些计算机上,根据操作系统的常规设置,可能很难看出按钮是否被按下。
如何使按钮的状态更明显,与操作系统设置无关?
我确切地说应用程序使用Eclipse 3平台,我需要它从XP开始在任何桌面Windows上运行。
答案 0 :(得分:2)
由于我没有找到任何干净的解决方案(一个适用于所有按钮而不必复制所有图标的解决方案),我按照亚历山大的建议做了:
button.addSelectionListener(new SelectionListener() {
public void widgetDefaultSelected(SelectionEvent e) {
}
public void widgetSelected(SelectionEvent e) {
button.setImage(button.getSelection() ? pushedIcon : icon);
...
}
});
看起来像这样:
在颜色设置不正确的计算机上(例如选择灰色),这将是一项改进。