gpt4 book ai didi

windows-7 - SWT Table.setLinesVisible(false) 似乎不适用于 Windows 7

转载 作者:行者123 更新时间:2023-12-04 06:26:13 25 4
gpt4 key购买 nike

我们公司正试图将每个人从 Window XP 转移到 Windows 7,所以我正在测试一些本土的 SWT 应用程序,以确保它们仍然可以在 Windows 7 上运行。它们中的大多数仍然可以运行,但有一些奇怪的怪癖。我已经能够解决其中的大部分问题,但是这里的一个我没有运气。

SWT 表似乎总是在列之间有一条难看的黑线。我试过调用 setLinesVisible(false),但无济于事。我知道这似乎不是一个重要的区别,但我们的用户可能非常挑剔。有没有人有将应用程序迁移到 Windows 7 的类似经历,或者对我可以尝试的方法有什么建议?

之前(在 XP 中 - 竖起大拇指):

enter image description here

之后(在 Windows 7 中 - 拇指向下 [注意黑线]):

enter image description here

有什么建议?

最佳答案

尝试将以下监听器添加到您的表中:

      //Assuming your table is named 'table' and 'backgroundColor' is the
//color you're using to paint it's background.
table.addListener(SWT.EraseItem, new Listener() {
@Override
public void handleEvent(Event event) {
event.gc.setBackground(backgroundColor);
event.gc.fillRectangle(event.getBounds());
}
});

这应该可以解决垂直线的问题。这是它在我的示例表上的外观:

没有听众(注意垂直线,在我的情况下它们不是黑色的,它们是灰色的......但它们仍然可见):

enter image description here

现在添加监听器:

enter image description here

关于windows-7 - SWT Table.setLinesVisible(false) 似乎不适用于 Windows 7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6013551/

25 4 0