目前,在使用swt的情况下,有时我想让某个程序任意出现在前台(就像闹钟一样)。
通常,以下作品(jruby):
@shell.setMinimized(false)
@shell.forceActive
如果将外壳最小化,则它将外壳置于最前面。
随时创建一个新的外壳也将(新外壳)带到了前面。
但是,到目前为止,如果外壳 没有
最小化,那么上面的代码只是在任务栏中闪烁(闪烁)应用程序图标。好吧,实际上,当您第一次运行它时,它将它带到了最前面。之后,它仅在任务栏中闪烁。那是窗户。在Linux上,它似乎仅在任务栏中闪烁(ubuntu默认)。
有谁知道跨平台的方法让应用程序以swt的形式出现在最前面吗?
看来forceActive setActive setMinimized(false)setFocus
setFocus和setVisible都无法完成此任务。
我很确定这是可能的(至少在Windows中是这样),因为E文本编辑器可以做到。好吧,这还不算什么,但是至少其他一些应用已经知道可以做到这一点。
我在想这可能是swt bug
192036吗?
非常感谢。
有关:
http://github.com/rdp/redcar/commit/d7dfeb8e77f13e5596b11df3027da236f23c83f0
展示了我如何在Windows中执行此操作(使用ffi)。
几个有用的技巧“可能”是
在BringToFront.SetForegroundWindow(wanted)调用之后添加一个“ sleep 0.1”(希望这个实际上不是必需的)。
将窗口置于前景 后, 添加一个shell.set_active 。由于某种原因,forceActive不会调用setActive。
注意,setActive会执行user32.dll BringWindowToTop调用,并且需要在分离线程输入之前完成。
还要注意的是,如果您可以按正确的顺序调用,则可能根本不需要使用线程输入技巧(?)。
http://betterlogic.com/roger/?p=2950
(包含一些有关如何 正确 执行此操作的好提示)
在Linux上,forceActive 确实可以 工作-但仅在您移至其他几个窗口之前,然后在任务栏中闪烁(仅此之后)。猜测swt错误。[1]
也相关:
如何把窗户放到前面?
http://github.com/jarmo/win32screenshot/blob/master/lib/win32/screenshot/bitmap_maker.rb#L110
“ set_foreground”似乎可以 同时使用 xp和Windows 7
[1] 需要在Windows和https://bugs.eclipse.org/bugs/show_bug.cgi?id=303710
上将应用程序置于前台
问题内容: 我创建了一个自定义视图(我们称之为),该视图基本上只是使用画布在其自身上绘制一些文本。使用全局变量设置要绘制的文本。 在程序执行过程中的某个时候,我想更改全局变量,并重新绘制自身以更新文本。我尝试过然后,但这无济于事。我怀疑既然内的任何内容都没有改变,它认为没有理由打电话给我。是否有任何方法可以强制视图重新绘制自身,即使它认为不需要重新绘制它呢? 问题答案: 如果我在MyView内部有
问题内容: 因此,我正在远程容器上查看带有jmap的堆,并且我想对其进行强制垃圾收集。如何在不弹出jvisualvm或jconsole和朋友的情况下执行此操作? 我知道您不应该进行强制垃圾回收的实践-您应该弄清楚为什么堆很大/越来越大。 我还意识到System.GC()实际上并没有强制垃圾回收-它只是告诉GC您希望它发生。 话虽如此,有没有一种方法可以轻松地做到这一点?我缺少一些命令行应用程序?
移动端HTML如何做强制横屏效果?就是页面一打开就是横屏的,现在页面横屏了,可是里面的子元素不横屏,我就奇怪了,我看别人写的都可以我跟写的就不行,我还对比了样式,也没看出来哪里不一样 有谁知道是怎么回事吗?
本文向大家介绍您如何强制MySQL LIKE区分大小写?,包括了您如何强制MySQL LIKE区分大小写?的使用技巧和注意事项,需要的朋友参考一下 为了在LIKE BINARY的帮助下强制MySQL LIKE区分大小写,以下是语法- 为了理解上述概念,让我们创建一个表。以下是创建表的查询- 现在,您可以插入带有小写字母的记录,以强制MySQL LIKE区分大小写- 在表中显示记录。查询如下- 以下
问题内容: 我有一个C / C ++程序,它在内存不足时可能会挂起。我们通过同时运行许多副本发现了这一点。我想在不完全破坏开发机性能的情况下调试程序。有没有一种方法来限制可用的内存,以便在请求了500K内存之后,new或malloc将返回NULL指针? 问题答案: 试着反省这个问题,并询问如何限制操作系统将允许您的进程使用的内存量。 尝试查看http://ss64.com/bash/ulimit.
问题内容: 我有一个像这样的DataFrame: 我想要得到的是 到目前为止,这是我的方法。 有没有有效的方法来实现这一目标?这是减慢速度的方法。谢谢您的助手!:) 我的真实数据大小 问题答案: 这是使用justify-的NumPy解决方案- 如果要节省内存,请改回分配-