机上装两个显卡,接两台显示器,如何编程输出不同内容?

解决方案 »

  1.   

    设置Dialog的坐标就行了。0,0
    800,0
      

  2.   

    一块显卡双头带两个显示器一般都是用坐标来确定的。
    用GetSystemMetrics,NT下会获得两个屏幕的宽度总合,而2k/XP下只获得一个屏幕(主屏幕)的宽度。然后根据系统分别设置窗口的位置。两块显卡两个显示器没做过,不过应该类似的处理。
      

  3.   

    在2k/xp下在你的OnCreate或者OnInitiDialog之类的初始化函数中:
    CRect clientRect;
    GetWindowRect(clientRect);
    int nCx = GetSystemMetrics(SM_CXSCREEN);
    clientRect.right += nCx;
    clientRect.left += nCx;
    MoveWindow(&clientRect,TRUE);
    在NT下
    CRect clientRect;
    GetWindowRect(clientRect);
    int nCx = GetSystemMetrics(SM_CXSCREEN);
    clientRect.right += nCx/2;
    clientRect.left += nCx/2;
    MoveWindow(&clientRect,TRUE);简单的判断一下是不是NT吧。记得有一个宏~~可惜记不清楚了~~有谁知道的就告诉我一声吧。
      

  4.   

    嗯,是这个:_WIN32_WINNTWindows Server 2003 family: _WIN32_WINNT>=0x0502
    WINVER>=0x0502
     
    Windows XP: _WIN32_WINNT>=0x0501
    WINVER>=0x0501
     
    Windows 2000: _WIN32_WINNT>=0x0500
    WINVER>=0x0500
     
    Windows NT 4.0: _WIN32_WINNT>=0x0400
    WINVER>=0x0400