Позиционирование элементов в Компоненте зависит от объекта Layout, который вы используете. В приведенном примере вы используете GridLayout. Это означает, что вам нужно предоставить конкретный объект LayoutData, чтобы указать, как вы хотите, чтобы ваш компонент отображался. В случае GridLayout объектом является GridData.
Чтобы достичь того, что вы хотите, вы должны создать объект GridData, который захватывает все горизонтальное пространство и заполняет его:
// Fills available horizontal and vertical space, grabs horizontal space,grab
// does not grab vertical space
GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false);
text.setLayoutData(gd);
Альтернативные способы включают использование другого LayoutManager, например FormLayout. В этом макете используется объект FormData, который также позволяет указать, как компонент будет размещен на экране.
Вы также можете прочитать эту статью о макетах, чтобы понять, как работают макеты .
В качестве примечания, конструктор new GridData (int style) помечен как «не рекомендуемый» в документации. Вместо этого предпочтителен явный конструктор, показанный в этом примере.