GTK#询问监视器边界

时间:2016-11-23 10:41:03

标签: c# mono gtk monodevelop gtk#

我正在开发音频cuesheet的应用程序。在应用程序内部,如果用户关闭应用程序,我会保存位置,高度和宽度,以便在开始时我可以重置位置,高度和宽度。 现在我收到了一个错误报告,在2个监视器上,用户关闭应用程序,只切换到1个监视器(停靠笔记本)并再次打开应用程序,不再看到应用程序,因为位置在第二个监视器上( x,y> 2000px)。 你有什么想法,我怎么能向GTK询问显示器边界? 我使用的代码: 设定位置:

this.Move(Program.getInstance().getObjOption().getIntWindowX(), Program.getInstance().getObjOption().getIntWindowY());

获得职位:

protected void OnDeleteEvent(object sender, DeleteEventArgs a)
{
            //Save window allocation
            int intX;
            int intY;
            this.GetPosition(out intX, out intY);
            Program.getInstance().getObjOption().setIntWindowX(intX);
            Program.getInstance().getObjOption().setIntWindowY(intY);
}

感谢您的帮助! 斯文

1 个答案:

答案 0 :(得分:1)

如果您在连接的显示器的总屏幕尺寸之后,可以通过

获得
 Gdk.Screen screen = Gdk.Screen.Default;
 int width = screen.Width; 
 int height = screen.Height;

我刚尝试连接2台显示器(1920x1200和1920x1080) 它给出了3840x1200