只是想知道是否有一种已知的方法可以让 Mono System.Windows.Forms 应用程序在 Ubuntu/Gnome 上全屏显示。
单声道是 2.4.2.3
Ubuntu 是 9.10
在 Windows 上执行此操作需要 pinvoke,显然在这里不起作用。
这就是我将窗口边框设置为无、窗口位置设置为中心、状态设置为最大化的结果:
替代文本 http://dl.dropbox.com/u/116092/misc/permalink/joggler/screenshot01.png http://dl.dropbox.com/u/116092/misc/permalink/joggler/screenshot01.png
Update.
也尝试过:
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
CTRL-F11
文本=字符串.空; // 无标题
最大化框 = false;
最小化框=假;
控制框=假;
表单边框样式=无;
窗口状态=最大化;
FormBorderStyle = FormBorderStyle.None;
位置 = 新点(0, 0);
大小 = Screen.PrimaryScreen.Bounds.Size;
所有这些我最终都得到相同的结果。
我遇到过一条涉及 _NET_WM_STATE_FULLSCREEN 的 pinvoke 的线索,但这就是我所掌握的。任何有关这方面的指示将不胜感激。
_NET_WM_STATE_FULLSCREEN 将消除边框。 GNOME 面板仍然会出现。
根据以下帖子,秘诀是摆脱最小/最大尺寸,以便窗口管理器自行调整大小:
http://linux.derkeiler.com/Mailing-Lists/GNOME/2010-01/msg00035.html http://linux.derkeiler.com/Mailing-Lists/GNOME/2010-01/msg00035.html
以下是有关本机规范的一些文档:
http://standards.freedesktop.org/wm-spec/wm-spec-latest.html http://standards.freedesktop.org/wm-spec/wm-spec-latest.html
http://www.x.org/docs/ICCCM/icccm.pdf http://www.x.org/docs/ICCCM/icccm.pdf
要直接与 X Window 系统对话,您必须调用 XLib。为了发送类似 _NET_WM_STATE_FULLSCREEN 的内容,您必须有一个指向窗口和显示器的指针。
我不知道如何找到显示器,但我可以提供指向窗口的指针。当在 X 上运行时,该属性Form.Handle
应该是指向 X 窗口的指针。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)