我想在多个显示器上绘制覆盖图,它应该覆盖每个任务栏,基本上每个元素。我在4.5.2版本中使用SWT。
到目前为止我做了什么?
shell = new Shell(display.getActiveShell(), SWT.ON_TOP | SWT.DOUBLE_BUFFERED);
shell.setBounds(display.getBounds());
这个解决方案在我的 Debian (stretch) 上完美运行。 Windows 有问题,我测试了 Windows 10,它绘制了覆盖层,但任务栏位于顶部。
我考虑在 N 个显示器上激活全屏的 N 个独立 shell,但我认为不可能在多个 shell 上激活全屏。
有人有什么想法吗?也许我应该尝试使用其他库?
最佳答案
完全是吐痰,但是
Rectangle rect = new Rectangle(0, 0, 0, 0);
Stream.of(shell.getDisplay().getMonitors()).map(Monitor::getBounds).forEach(p->rect.add(p));
shell.setBounds(rect);
关于java - 在多个显示器上绘制叠加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36698635/