5

I'm developing an application in VS2008 VC++.net

I want to move the application to the secondary monitor. Not by clicking and dragging using mouse.

Is there any function like MoveToMonitor by pressing the button or any shortcut keys. Then it should move to secondary monitor.

1
  • I'm answering based on the assumption that you're asking about functions you can use in programming. If you're asking about shortcut keys that Windows provides, then this probably belongs on SuperUser. Commented Mar 25, 2010 at 6:24

2 Answers 2

3

You should be able to call GetMonitorInfo and move your window to with in that.

See here ' MFC Example Multiple monitor support with GetSystemMetrics EnumDisplayMonitors and GetMonitorInfo' for more info.

Using the code CMointor is a basic MFC class that allows you to safely use the multiple-monitor API on any Win32 platform. There are three classes in this library: CMonitors represents the collection of monitors currently attached to the system and wraps the EnumDisplayMonitors API function. Collapse Copy Code //CMonitors' interface CMonitor GetMonitor( const int index ) const; int GetCount() const; //returns the monitor closest to the specified item static CMonitor GetNearestMonitor( const LPRECT lprc ); static CMonitor GetNearestMonitor( const POINT pt ); static CMonitor GetNearestMonitor( const CWnd* pWnd ); //is the specificed item visible on any monitor static BOOL IsOnScreen( const POINT pt ); static BOOL IsOnScreen( const CWnd* pWnd ); static BOOL IsOnScreen( const LPRECT lprc ); //returns the rectangle encompassing all monitors static void GetVirtualDesktopRect( LPRECT lprc ); //determines whether the given handle is a valid monitor handle static BOOL IsMonitor( const HMONITOR hMonitor ); static CMonitor GetPrimaryMonitor(); static BOOL AllMonitorsShareDisplayFormat(); static int GetMonitorCount(); CMonitor is a wrapper around an HMONITOR handle (returned from EnumDisplayMonitors) and the GetMonitorInfo function. With CMonitor you can get at the characteristics of a given monitor. Collapse Copy Code //The interface of CMonitor void Attach( const HMONITOR hMonitor ); HMONITOR Detach(); void ClipRectToMonitor( LPRECT lprc, const BOOL UseWorkAreaRect = FALSE ) const; void CenterRectToMonitor( LPRECT lprc, const BOOL UseWorkAreaRect = FALSE ) const; void CenterWindowToMonitor( CWnd* const pWnd, const BOOL UseWorkAreaRect = FALSE ) const; //creates a device context for the monitor - the client is responsible for // DeleteDC HDC CreateDC() const; void GetMonitorRect( LPRECT lprc ) const; //the work area is the monitor rect minus the start bar void GetWorkAreaRect( LPRECT lprc ) const; void GetName( CString& string ) const; int GetBitsPerPixel() const; //determines if the specified item on the monitor BOOL IsOnMonitor( const POINT pt ) const; BOOL IsOnMonitor( const CWnd* pWnd ) const; BOOL IsOnMonitor( const LPRECT lprc ) const; BOOL IsPrimaryMonitor() const; BOOL IsMonitor() const; CMonitorDC is a CDC derived class that represents a monitor specific device context. I haven't really gone to far with this class but it seemed like a logical part of the library. Known Limitations CMonitor and CMonitors rely on the assumption that a monitor handle does not change. This has proved to be a safe assumption empirically but isn't nessecarily a guarantee. 

If you are on Window 7 then the moving windows between monitors is Windows-Arrow

Sign up to request clarification or add additional context in comments.

4 Comments

Can you provide me any sample coding on that.
By usins the MSDN sample code,the screen fits to center,its not move to second monitor.
second link is broken.
Fixed link and copied relevant info.
2

You use MoveWindow (or SetWindowPos, though you don't need the extra things it can do in this case) to move the Window to the part of the desktop shown on the monitor in question. You can find that with (among other possibilities) EnumDisplayMonitors, which will tell you the rectangle associated with each monitor.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.