如何用一台主机控制俩个显示器?在俩个显示器显示不一样的界面?

lgchina97 2005-12-14 11:46:26
请问:如何实现一个程序在俩个显示器上执行不一样的界面?当然,首先得硬件支持双屏幕。

举个例子:比如我们在摄像头监控时,一个屏幕显示4个监控窗口,另外一个辅助屏幕监控另外4个窗口,或者可以放大8个摄像头的其中任何一个监控窗口?

希望高手给些思路,后者demo程序,谢谢!!

我的联系方式: lg_china97@sina.com

...全文
1542 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
寻开心 2005-12-16
  • 打赏
  • 举报
回复
用了directdraw的时候有一定的区别
创建设备的时候,指定的参数需要注意

有个例子,
http://www.gamedev.net/reference/articles/article1179.asp

不同的显示器在ddraw当中是不同的设备,需要注意
programfanny 2005-12-16
  • 打赏
  • 举报
回复
顶一下,学习
lgchina97 2005-12-16
  • 打赏
  • 举报
回复
用自动扩展显示器已经可以实现了。

只是近一步想,如果俩台显示器各自管理自己的剪切区,各自菜单自己控制,该如何操作呢?
当然鼠标是属于系统的。
sdgzhk 2005-12-16
  • 打赏
  • 举报
回复
是否可以做成无盘
lgchina97 2005-12-16
  • 打赏
  • 举报
回复
楼上几位星星说得很有道理,不过这只是其中一种办法,
有没有其他方法呢?

另外,我这里对每个通道速度要求特别的严格,不是简单创建出窗口就可以。用到了DirectDraw技术,不知道怎么能够扩展到第二个显示器。正在试验中……

谢谢各位的回答。

需要解释的是,硬件确实已经支持多显,显卡自带多头
寻开心 2005-12-14
  • 打赏
  • 举报
回复
其实就楼主的目的来说,很简单
首先显卡支持多头输出 ,可以同时连接两个显示器
然后扩展桌面

创建两个窗口,一个窗口专门用检视的
另外一个窗口是根据需要来显示特定内容的

创建第二个窗口后,用户把他托拽到第二个显示器上就是了

上述操作都是系统自动支持的

如果非要程序自动解决也没有什么,创建第二个窗口后,根据桌面扩展的内容,MoveWinodw把窗口移动过去就可以了

和一个显示器显示两个内容没有多大的差异


kevinmartin 2005-12-14
  • 打赏
  • 举报
回复
Create 多个不同的窗口,每个窗口显示不同的东西部就可以了?
Kudeet 2005-12-14
  • 打赏
  • 举报
回复
或者你可以使用Direct3D技术:

IDirect3D9::CreateDevice
HRESULT CreateDevice(
UINT Adapter,
D3DDEVTYPE DeviceType,
HWND hFocusWindow,
DWORD BehaviorFlags,
D3DPRESENT_PARAMETERS* pPresentationParameters,
IDirect3DDevice8** ppReturnedDeviceInterface
);
//第一个参数可以指定使用的显示卡
Kudeet 2005-12-14
  • 打赏
  • 举报
回复
ZT:

如果用来收费,应该是主显示器显示收费操作窗口,第二显示器显示给顾客看的缴费信息窗口。实现如下:
1、开发时,将屏幕分辨率设为1024x768,在VB中,将主窗口和缴费
窗口尺寸定义为800x600。
2、将主窗口移到屏幕左上角(0,0),将缴费窗口拼在其右边,记下
缴费窗口的属性Left的值xxxx.
3、运行时,将两个屏幕分辨率定义为800x600,显示第二个窗口的
代码如下:
Form2.top=0:Form2.left=xxxx ‘定义缴费窗口的显示位置

可以试着把第二个窗口的top、left值设置为第二个显示器的位置
Kudeet 2005-12-14
  • 打赏
  • 举报
回复
可以参考win2000/nt的虚拟桌面技术
寻开心 2005-12-14
  • 打赏
  • 举报
回复
msdn 上面 关于 multi montior的部分
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/monitor_53sj.asp
菲斯可儿 2005-12-14
  • 打赏
  • 举报
回复
关注~
gohappy_1999 2005-12-14
  • 打赏
  • 举报
回复
mark
pomelowu 2005-12-14
  • 打赏
  • 举报
回复
其实就是,屏幕属性里设置为桌面拓展就完了,其中一个显示器是主显示器,其他的只不过是桌面的延伸,按显示器的排列方法,坐标累加就OK了。鼠标和键盘的输入不用担心,屏幕上只会有一个鼠标,只有一个窗口接受键盘输入,就和一台显示器的系统没有区别。区别就是,鼠标可以自由的显示器上移动。

ps,如果显示器排列得不对,小心找不到鼠标~
寻开心 2005-12-14
  • 打赏
  • 举报
回复
不归属任何显示器啊

鼠标和键盘归系统用

38062708 2005-12-14
  • 打赏
  • 举报
回复
顺便问一下,那鼠标和键盘归哪个显示器用呢?

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧