GTK窗口盖整个屏幕
我正在从事一项小型的教育工作,我创建了一个窗口,它应该覆盖整个显示器.然而,从底部的screnshot看到的“特殊”区域没有被覆盖.我的窗口是一个坚实的红色,没有菜单栏滚动条等,无论如何,有这个覆盖顶部菜单栏和码头.在我的屏幕截图中,我正在测试Ubuntu和Mint,这是Gtk OS上的一致行为我需要设置我的窗口所以它涵盖了所有这些可能吗?
我试过gdk_window_fullscreen,但它没有做任何事情,甚至不是全屏,你认为它是因为我从另一个线程运行这个函数?我怎么知道这个函数是否需要从主线程运行? Ubuntu的覆盖面不完整: Mint的覆盖面不完整: 代码尝试 >使用主线程中的Firefox代码打开无框窗口: var aEditorDOMWindow = Services.ww.openWindow(null,core.addon.path.content + 'panel.xul','_blank','chrome,width=1,height=1,screenX=0,screenY=0',null); >现在加载完成后,在主线程上获取此窗口的GdkWindow *并作为字符串传递给另一个线程 var gdkWinPtr = ostypes.TYPE.GdkWindow.ptr(ctypes.UInt64(aHwndStr)); var gtkWinPtr = ostypes.HELPER.gdkWinPtrToGtkWinPtr(gdkWinPtr); >该线程然后执行gtk_window_set_keep_above,因为如果有另一个应用程序被聚焦,它将聚焦这个人,它将使他在现有的全屏窗口上 var rez_topIt = ostypes.API('gtk_window_set_keep_above')(gtkWinPtr,true); >然后用于运行gtk_window_present的线程,但我删除它,因为我注意到它会使应用程序崩溃,这是代码: var rez_focus = ostypes.API('gtk_window_present')(gtkWinPtr); >实验性的尝试我试过但它没有工作使窗口覆盖特殊的UI: > ostypes.API(‘gdk_window_set_type_hint’)(gdkWinPtr,ostypes.CONST.WINDOW_TYPE_HINT_SPLASHSCREEN); var geom = ostypes.TYPE.GdkGeometry(); geom.max_width = aOptions.fullWidth; geom.max_height = aOptions.fullHeight; var rez_geo = ostypes.API('gtk_window_set_geometry_hints')(gtkWinPtr,null,geom.address(),ostypes.CONST.GDK_HINT_MAX_SIZE); >现在线程工作已完成,并进入主线程.现在主线程使用firefox javascript将窗口移动到最左上方(我之前使用Gdk调用计算)并且还将此窗口的宽度和高度设置为所有监视器的计算(我之前使用其他gdk执行此操作)呼叫) aEditorDOMWindow.moveTo(collCanMonInfos[0].xTopLeft,collCanMonInfos[0].yTopLeft); aEditorDOMWindow.resizeTo(collCanMonInfos[0].nWidth,collCanMonInfos[0].nHeight); 这导致窗口SOMETIMES覆盖所有监视器,其他时间只覆盖它打开的窗口.它永远不会覆盖像taskbar / dock / menubars这样的特殊UI. 如果你能告诉我如何实现一个完全涵盖所有非常感激的窗口,我试图教一些人一些东西,我遇到了一团糟. 这是我正在制作的插件的YouTube视频:https://www.youtube.com/watch?v=aJM5NQK67N4 我停止使用gdk_fullscreen,因为当它间歇性地工作时,它不允许窗口在一个监视器外扩展.
面板通常用struts实现,窗口管理器可以决定永远不允许窗口覆盖它们;这就是为什么引入“全屏窗口”的整个想法的原因之一:它给窗口管理器一个暗示,要求全屏的窗口应该覆盖所有其他窗口;没有装饰品;并且还涵盖所有最终的“系统”组件,如面板.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- windows-7 – 如何在断开与RDP会话的连接时保持用户登录
- windows-vista – Vista是否在DCOM调用中更严格地检查接口I
- 任何人都有删除特定本地Windows配置文件的脚本?
- Windows“cmd.exe”是否以不同方式解析参数?
- 批处理脚本(Windows)字符串替换扭曲
- active-directory – “爆炸帐户”一词的起源和/或标准是什
- 将uint8_t作为int8_t进行便携式重新解释并强制对其进行恭维
- adodb – Windows脚本宿主(jscript):我如何下载二进制文件
- windows-server-2008-r2 – 虚拟(ESXi4)Win 2k8 R2服务器在
- Windows 10 Always On VPN,拆分DNS,NRPT以及如何配置使用的
- AutoHotKey:如何禁用Skype热键并使键盘正常运行
- windows10计划任务启动bat执行jar打包的jar文件
- windows – 检测具有节点的系统路径上是否存在可
- windows-server-2012 – 远程桌面服务安装/执行模
- windows-7 – Windows 7版Virtual PC中“关闭”和
- .net – 在XUnit中使用Moles – 错误的dll版本
- Windows上的Python性能
- windows-server-2003 – 在域加入上向本地Admini
- windows – 通过tf.exe确定TFS工作区的本地路径
- 不同于Windows的Linux系统中命令运用(一)