The source of this problem has now been identified. Firstly, the lack of response to ESC was my fault, I created a QWidget rather than a QDialog. As to the principal problem; the driver for the Matrox graphics card (millennium P650) I am using provides the option (in their words): 'save and restore the size and position of program windows each time you open and close program windows' and in my case this option was turned on; turning it off solves the problem.
The problem has been around for some time. With Qt3 its affect is to cause dialog windows to display at a larger size than expected when they are displayed for the first time. The behaviour reverts to normal after resizing. In the Qt4 Designer preview case the affect was more obvious and it seems to have screwed up the dialogs position as well as its size. I have never had any trouble from Microsoft apllications, or indeed any other than Qt applications.
Clearly, the Matrox driver must be up to tricks with the Win32 api and Qt is following a different practice in its window creation from that used in other applications. The simple solution for the developer is to turn the option off.
I should perhaps mention that the problem was still present using the latest Matrox driver P650 1.11.0.114 and Qt4.1.4.
Bookmarks