Click here to Skip to main content
12,251,332 members (44,746 online)
Rate this:
 
Please Sign up or sign in to vote.
See more: MFC
Hi all,

I'm trying to disable the ability to drag a window around but I haven't seem to find the correct code for it.

The ones that I have found is to do check for the WM_NCHITTEST message and if it belongs to the title bar, shift it to something else. I was hoping for a more direct solution.

Thanks in advance!
Posted 10-Apr-12 14:55pm
amsga580
Rate this: bad
 
good
Please Sign up or sign in to vote.

Solution 2

Managed to to solved this.

Using the OnMoving function and ON_WM_MOVING message, just change the values of the function parameter of the LPRECT to the current window size.

void MyClass::OnMoving(UINT nSide, LPRECT lpRect)
{
	CDialog::OnMoving(nSide, lpRect);
 
	// TODO: Add your message handler code here and/or call default
	
	// Find Current location of the dialog
	CRect CurRect;
	GetWindowRect(&CurRect);
 
	// Set current location as the moving location
	lpRect->left = CurRect.left;
	lpRect->top = CurRect.top;
	lpRect->right = CurRect.right;
	lpRect->bottom = CurRect.bottom;
}
  Permalink  
Rate this: bad
 
good
Please Sign up or sign in to vote.

Solution 1

will this work for you WM_GETMINMAXINFO [^]
  Permalink  
Comments
amsga 15-Apr-12 23:20pm
   
This one only refers to size, I still need something to prevent users from dragging the window in different positions.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month


Advertise | Privacy | Mobile
Web02 | 2.8.160426.1 | Last Updated 23 Apr 2012
Copyright © CodeProject, 1999-2016
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100