2017-02-18 9 views
0

私はアプリケーションを開発しており、私の雇用主は絶対サイズ(1024 x 768)を要求しています。この絶対コンポジットを塗りつぶしレイアウト(または他のもの)を持つ別のコンポジットに挿入し、絶対レイアウトを常に中央に設定することは可能ですか?Java SWT画面上に絶対合成を集中します

私はスクリーンを開発するのがかなり新しいので、私はこのコンセプトと混同しています。

ありがとうございます。

+1

:よう

何か。シェルのサイズと位置を設定するのは簡単ですが、それはあなたが望むものではありませんか? –

+0

@ gre-449申し訳ありませんが、明らかではない場合。 –

+0

私がしようとしていることは、次のとおりです。スクリーンを埋めるようにサイズを設定したシェルを持っていたい。このシェルの中では、コンポジット(1024x768)が常に画面の中央にくるように設定します。それにアクセスしているコンピュータの解像度には関係ありません。 –

答えて

1

GridLayoutを使用して、コンポジットをシェルの中央に配置できます。私はあなたが求めているものをクリアしていないよ

Display display = new Display(); 

Shell shell = new Shell(display, SWT.SHELL_TRIM); 

shell.setText("Stack Overflow"); 

shell.setFullScreen(true); 

shell.setLayout(new GridLayout()); 

// Composite, just using a border here to show where it is 
Composite composite = new Composite(shell, SWT.BORDER); 

// Center composite in the shell using all available space 
composite.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, true, true)); 

composite.setLayout(new GridLayout()); 

// Something to put in the composite 
Label label = new Label(composite, SWT.BEGINNING); 
label.setText("Text"); 

shell.open(); 

while (!shell.isDisposed()) { 
    if (!display.readAndDispatch()) 
     display.sleep(); 
    } 

display.dispose(); 
+0

ありがとう、グレッグ。これはまさに私が必要としたものでした。 –

関連する問題