You could listen for WM_DISPLAYCHANGE message.
The documentation says that it is sent on monitor resolution change, but my experimenting with Spy++ on Win7 shows that it is sent on multiple monitors arrangement change as well (in fact, it is the only system-wide notification which is sent at that moment).