так ведь высчитываю нужную высоту двух окон , изменяю размер влаживаемых виджетов согласно расчетов, потом только влаживаю их, а QT по собственным какимто непонятным расчетам положение сплитера устанавливает ((((((
У меня тоже постоянные с этим проблемы.
В итоге перегружаю у главного окна setVisible() в нём испускаю сигнал opened().
Когда нужно зафиксировать размер дока цепляюсь за этот сигнал и уже в слоте выставляю нужный размер.