Thread: WM_DISPLAYCHANGE clarification

  1. #1 JasonD's Avatar
    Join Date
    Mar 2003

    WM_DISPLAYCHANGE clarification

    I am handling the WM_DISPLAYCHANGE message to resize buffers that coorespond to the screen size within my program. The problem lies in that child windows are handling these buffers. The webpage above states: "The WM_DISPLAYCHANGE message is sent to all windows when the display resolution has changed" at first, and then "This message is only sent to top-level windows. For all other windows it is posted." I was wondering if anyone could clear up this confusion, and what exactly it means by 'posted'. I know the difference between SendMessage() and PostMessage(), but it appears that the message never reaches any child window procedure. From my own experimentation, the message is sent only to the main window procedure, and I must send it to the child window myself if I wish for it to know about the display change.

    Edit: I think I simply misunderstood the text by reading 'top-level windows' too fast. It likely means that the message is sent to all top-level main windows, and posted to all other main windows, and never send/posted to any child windows, which is consistent with my examples.

  2. #2
    Registered User
    Join Date
    Nov 2006
    I agree, WM_DISPLAYCHANGE does not appear to reach child windows.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. srand() Clarification
    By Epo in forum C++ Programming
    Replies: 2
    Last Post: 03-03-2005, 11:05 PM
  2. Need a clarification here
    By bithub in forum A Brief History of
    Replies: 30
    Last Post: 12-27-2004, 01:06 AM
  3. exercise clarification truth table
    By curlious in forum C++ Programming
    Replies: 1
    Last Post: 12-18-2003, 07:28 PM
  4. A little clarification?
    By Dr Nick in forum C++ Programming
    Replies: 2
    Last Post: 06-20-2002, 01:47 PM
  5. Clarification of Function Templates
    By biosx in forum C++ Programming
    Replies: 2
    Last Post: 02-20-2002, 11:42 AM