You have only the pointer there, create an object, using new if you use a pointer, or you can create one dialog on the stack if you use .exec() to make it modal.

Take a look at this FAQ

LE: also check the classes names, because you created your own Dialog class and you created a pointer to QDialog class in the mainwindow.