现在很多显卡都带有S端子,可以直接接到电视或投影仪(当然双头显卡或是用双显卡也可以)。
winXp已经内置支持双显示器。装了双输出的显卡后在显示属性里会看到有二个监视器图标了。
在第二个监视器上选中“将window桌面扩展到该监视器上”,就可以把第二个监视器当作第一个监视器的延伸来用了。
例如二个监视器的分辨率都是1280*1024的话,那二个监视器加起来就有了2560*1024的桌面了。
使用时也很方便,只要把窗口拖到另一个监视器中去就行了。
这样可以在一个监视器上打开vs2005在另一监视器上打开msdn;或是在一个监视器上写程序另一个监视器上用pplive看世界杯。
.net2.0在System.Windows.Forms.Screen类提供了对多监视器的支持(参见ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.NETDEVFX.v20.chs/CPref17/html/T_System_Windows_Forms_Screen.htm)。
页首
有了这个类,在程序中控制使用双监视器就很简单了,只要将窗体的移到相应监视器的坐标范围就可以了。
如下图,笔者用的是二个17寸LCD,主监视器分辨率用1280*1024,辅监视器放在右边,因为距离远了点所以分辨率用低了一档为1024*768。
如要将窗体移到辅显示器上显示,只需一行代码:
笔者现在在开发的系统中就有一个子系统需要实现进入系统后在主监视器操作而在辅监视器上全屏播放视频。
最初的方案是用一个商业软件,此软件可以在winxp中实现用二套鼠标键盘,二个用户登录后分别在二个监视器上工作,互不干扰。每次重启后都要用另一个用户登录进去播放视频,后来觉得这样太麻烦,找到资料好就自己写了个简单的播放器。在系统启动后自动在辅监视器上全屏播放视频。省去了每次要登录二个用户的麻烦。
-
相关阅读:
面向中后台复杂场景的低代码实践思路
树莓派使用raspivid实时预览视频
grep rn无法匹配文件中的字符串
C++有关std::sort和std::bind那些事
C++有关unordered_map::erase的奇怪bug
ssh与tar的奇妙组合
git指定仓库使用特定用户名提交
在win7下搭建php+apache+mysql环境
神乎其神的技艺
好书推荐——《启动大脑》
-
原文地址:https://www.cnblogs.com/tiasys/p/1615425.html
winXp已经内置支持双显示器。装了双输出的显卡后在显示属性里会看到有二个监视器图标了。
在第二个监视器上选中“将window桌面扩展到该监视器上”,就可以把第二个监视器当作第一个监视器的延伸来用了。
例如二个监视器的分辨率都是1280*1024的话,那二个监视器加起来就有了2560*1024的桌面了。
使用时也很方便,只要把窗口拖到另一个监视器中去就行了。
这样可以在一个监视器上打开vs2005在另一监视器上打开msdn;或是在一个监视器上写程序另一个监视器上用pplive看世界杯。
.net2.0在System.Windows.Forms.Screen类提供了对多监视器的支持(参见ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.NETDEVFX.v20.chs/CPref17/html/T_System_Windows_Forms_Screen.htm)。
公共属性
名称 | 说明 | |
---|---|---|
AllScreens | 获取系统上所有显示器的数组。 | |
BitsPerPixel | 获取与数据的一个像素相关联的内存位数。 | |
Bounds | 获取显示的边界。 | |
DeviceName | 获取与显示关联的设备名称。 | |
Primary | 获取一个值,该值指示某个显示是否为主设备。 | |
PrimaryScreen | 获取主显示。 | |
WorkingArea | 获取显示器的工作区。工作区是显示器的桌面区域,不包括任务栏、停靠窗口和停靠工具栏。 |
公共方法 (请参见 受保护的方法 )
名称 | 说明 | |
---|---|---|
Equals | 已重载。 已重写。 | |
FromControl | 在 Screen 中检索包含指定控件的最大部分的显示器。 | |
FromHandle | 检索包含该对象(被指定句柄所引用)的最大部分的显示器的 Screen。 | |
FromPoint | 检索包含指定点的显示器的 Screen。 | |
FromRectangle | 检索包含矩形的最大部分的显示器的 Screen。 | |
GetBounds | 已重载。 检索显示器的边界。 | |
GetHashCode | 已重写。 计算并检索对象的哈希代码。 | |
获取当前实例的 | ||
GetWorkingArea | 已重载。 检索显示器的工作区。 | |
确定指定的 | ||
ToString | 已重写。 检索表示此对象的字符串。 |
有了这个类,在程序中控制使用双监视器就很简单了,只要将窗体的移到相应监视器的坐标范围就可以了。
如下图,笔者用的是二个17寸LCD,主监视器分辨率用1280*1024,辅监视器放在右边,因为距离远了点所以分辨率用低了一档为1024*768。
如要将窗体移到辅显示器上显示,只需一行代码:
this.DesktopLocation=Screen.AllScreens[1].Bounds.Location;
如果要在辅显示器上全屏显示:this.FormBorderStyle=FormBorderStyle.None;
this.DesktopBounds=Screen.AllScreens[1].Bounds;
this.DesktopBounds=Screen.AllScreens[1].Bounds;
笔者现在在开发的系统中就有一个子系统需要实现进入系统后在主监视器操作而在辅监视器上全屏播放视频。
最初的方案是用一个商业软件,此软件可以在winxp中实现用二套鼠标键盘,二个用户登录后分别在二个监视器上工作,互不干扰。每次重启后都要用另一个用户登录进去播放视频,后来觉得这样太麻烦,找到资料好就自己写了个简单的播放器。在系统启动后自动在辅监视器上全屏播放视频。省去了每次要登录二个用户的麻烦。
0
0
树莓派使用raspivid实时预览视频
grep rn无法匹配文件中的字符串
C++有关std::sort和std::bind那些事
C++有关unordered_map::erase的奇怪bug
ssh与tar的奇妙组合
git指定仓库使用特定用户名提交
在win7下搭建php+apache+mysql环境
神乎其神的技艺
好书推荐——《启动大脑》
- 最新文章
-
ES6之 箭头函数 Better
CSS 之 lineheight如何继承 Better
JS 原型和原型链的理解(图) Better
JavaScript之 深浅拷贝 Better
CSS float 与 清浮动 Better
CSS clearfix类 清浮动 Better
CSS block、inline、inlineblock 总结 Better
ES6 之 let 命令 Better
ES6 之 const 命令 Better
巧用WinRAR+Javascript解决activeX的自动安装问题
- 热门文章
-
vue.js 3.2.22:用useIntersectionObserver监控多行数据的可见性(@vueuse/core@7.0.3)
vue.js 3.2.22:用@vueuse/core实现图片懒加载(@vueuse/core@7.0.3)
vue.js 3.2.22:菜单每行依次滑动出现的动画
vue.js 3.2.22:自动旋转的音乐播放按钮
vue.js 3.2.22:多选上传图片带缩略图可删除
vue.js 3.2.22:平滑回到顶部
Java依赖冲突高效解决之道
专访阿里云王伟民:一站式全链路,阿里云向云原生数据库2.0跃迁
专题实战 | 如何快速构建高质量电商行业搜索?
媒体声音 | 云数据库,谁才是领导者?