0

SWT でブレッドクラム コントロールを作成しています。これはファイル システム上の場所を検索するためのバーと JFace テーブルを表示し、そのバーの下に TableViewer を使用して結果、つまり指定された場所にあるフォルダーとファイルを表示します。問題は、データがテーブルに読み込まれ、ウィンドウを最大化しようとすると、テーブルが折りたたまれ (完全に消えることもあります)、その下に空のスペースが残り、スクロール可能になります。以下は最大化する前の画像です。ここに画像の説明を入力

これは、ウィンドウを最大化した後に発生します。

ここに画像の説明を入力 これを修正するにはどうすればよいですか?ビューアーを作成するための私のコードは次のとおりです。

DirectoryViewer container = new DirectoryViewer(this, SWT.BORDER|SWT.V_SCROLL|SWT.FULL_SELECTION);
GridData conData = new GridData();
conData .horizontalAlignment = SWT.FILL;
conData.verticalAlignment = SWT.FILL;
conData .grabExcessHorizontalSpace = true;
conData.grabExcessVerticalSpace = true;
conData .horizontalSpan = 3;
container.getTable().setLayoutData(conData);

そして、DirectoryViewer のコンストラクター:

 public DirectoryViewer(Composite parent, int style) {
        super(parent, style);
        Table table = getTable();
        GridData gridData = new GridData(SWT.FILL, SWT.FILL, true, true);
        gridData .horizontalSpan = 3;
        table.setLayoutData(gridData);
        createColumns();
        table.setHeaderVisible(true);
        setContentProvider(new ContentProvider());
    }
4

0 に答える 0