Указанное вами GridData
использует все доступное горизонтальное пространство, но вертикальное пространство использует только начальный размер, рассчитанный для элемента управления.
Чтобы использовать все доступное вертикальное пространство, используйте:
messageText.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
Обратите внимание, что вы также указываете, что progressContainer
также должен захватывать все доступное пространство - это, вероятно, не то, что вы хотите, поэтому вам, возможно, придется изменить это. Возможно:
progressContainer.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));
Если вы хотите изменить размер текста сообщения при изменении текста, вам нужно позвонить
container.layout(true);
после установки нового текста для принудительного пересчета размеров. Используйте ваши исходные значения GridData
.