Como alterar programaticamente a ordem dos widgets em um layout?

Eu tenho umQVBoxLayout que contém alguns widgets personalizados, que consistem principalmente em um rótulo e dois botões. Você quase pode falar de algum tipo de mesa feita de uma maneira. Eu sei que existem widgets de tabela prontos disponíveis, mas eu gostaria de usar os meus.

O que eu quero alcançar é o seguinte: quando clico no botão "para cima" em um dos widgets, ele deve subir ou colocar de forma diferente: deve mudar sua posição / índice atual dentro do paiQVBoxLayout de uma maneira que ele avança um passo para cima (ou para baixo) a cada clique. Isso é possível? Como posso conseguir isso? Eu preciso disso como uma maneira fácil de definir a ordem dos itens nesse layout.

Comecei com a tentativa de obter o layout pai de dentro do meu widget:

QVBoxLayout* myLayout = qobject_cast<QVBoxLayout*>(this->parentWidget());

Isso parece funcionar, mas como continuar daqui? Obrigado pela ajuda!

questionAnswers(2)

yourAnswerToTheQuestion