Впрочем даже скорее не
QDialog* dlg = new QDialog(NULL);
а
dlg = new QMyDialog(NULL);
Где QMyDialog* dlg - член класса (удаляемый в деструкторе и т.д.)
или
а вообще есть ли смысл создавать диалог динамически, может всеже как обычную переменную?
Т.е. член класса QMyDialog dlg