Данный пример не подходит или я что-то не так делаю.
Вот например попробуй тоже самое с QLabel проделать.
Ты что-то не так делаешь. 
Dendy все правильно написал. Тебе нужно только вместо 
QLayout * layout = new Q...Layout;
написать
QLayout * layout = new QVBoxLayout;
чтобы получить то, что ты хочешь в первом примере.