C# winform 适应屏幕分辨率切换问题
情况:1.程序固定800X600,全屏时将屏幕分辨率改成800X600.2.还原,退出时将分辨率改回去.问题:1.程序全屏时,切换程序,怎么做到分辨率自动切换?(焦点事件...
情况:
1.程序固定800X600,全屏时将屏幕分辨率改成800X600.
2.还原,退出时将分辨率改回去.
问题:
1.程序全屏时,切换程序,怎么做到分辨率自动切换?(焦点事件?)
2.程序全屏时,程序未响应或强制关闭等非正常关闭,怎么保证分辨率正常切换回去?(做第二个程序专门监视?)
希望找到C#有简便的方法解决此类问题
啊,是这样...觉得这个程序可能被投影在墙上...这个时候要清晰的话,全部东西都必须等比例放大...
我现在采用计算的方式重新布局控件,觉得很麻烦(字体,GDI绘制的图片等等都无法自动dock)
改分辨率一步到位,但是不熟悉就来问问 展开
1.程序固定800X600,全屏时将屏幕分辨率改成800X600.
2.还原,退出时将分辨率改回去.
问题:
1.程序全屏时,切换程序,怎么做到分辨率自动切换?(焦点事件?)
2.程序全屏时,程序未响应或强制关闭等非正常关闭,怎么保证分辨率正常切换回去?(做第二个程序专门监视?)
希望找到C#有简便的方法解决此类问题
啊,是这样...觉得这个程序可能被投影在墙上...这个时候要清晰的话,全部东西都必须等比例放大...
我现在采用计算的方式重新布局控件,觉得很麻烦(字体,GDI绘制的图片等等都无法自动dock)
改分辨率一步到位,但是不熟悉就来问问 展开
3个回答
展开全部
你这是要改屏幕分辨率适应程序,而不是改程序以适应分辨率啊。对于系统设置的改动,恐怕你得参考win32 API了:
http://msdn.microsoft.com/zh-cn/library/aa383686(en-us,VS.85).aspx
ps:你这想法算是有点另类,改一次分辨率对系统的开销不小,切进切出都要改一次,用户体验估计好不了。其实据我所知,大部分投影也就支持1024x768,你就按这个分辨率设计UI我想可行啊,问题瞬间容易得多
http://msdn.microsoft.com/zh-cn/library/aa383686(en-us,VS.85).aspx
ps:你这想法算是有点另类,改一次分辨率对系统的开销不小,切进切出都要改一次,用户体验估计好不了。其实据我所知,大部分投影也就支持1024x768,你就按这个分辨率设计UI我想可行啊,问题瞬间容易得多
2012-08-30
展开全部
思路:
以我的想法是,根本不需要设定分辨率的,
你是知道 控件的 dock 属性 及 panle 的控件的应用
主要是 根据 panle 进行布局 可以根据他们各自的 dock
例如:
把界面分割成上左右 结构
先放一个 panle 的 dock 设定为 top 这个是估计的高度 再 最大化时也是这么大的
再放一个panle 的 dock设定为 left 这个是估计的高度 再 最大化时也是这么大的
再放一个 panle 的 dock 设定为 center 这个是跟随窗体的大小进行变大变小的
不知道是否是你想要的效果
以我的想法是,根本不需要设定分辨率的,
你是知道 控件的 dock 属性 及 panle 的控件的应用
主要是 根据 panle 进行布局 可以根据他们各自的 dock
例如:
把界面分割成上左右 结构
先放一个 panle 的 dock 设定为 top 这个是估计的高度 再 最大化时也是这么大的
再放一个panle 的 dock设定为 left 这个是估计的高度 再 最大化时也是这么大的
再放一个 panle 的 dock 设定为 center 这个是跟随窗体的大小进行变大变小的
不知道是否是你想要的效果
追问
有些没法跟着dock放大缩小,比如字体呀....
还要计算分辨率然后确定选用哪一种字体....
有些图片是GDI绘制的,又要计算...
最重要的是,用dock做会大量增加控件数量,我很多控件都是后台动态加入的,这样很麻烦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你为什么要这样做,不允许窗口最大化,然后窗体固定800*600大小就行了
追问
所谓 用户体验...
金馆长の脸
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询