ウィザードを作成するという目的でSWTを学習しています。私は既存のチュートリアルを変更しています。この時点で、私は、ウィザードの1ページ内の画像を表示しようとしています:表示なしでJava SWTでイメージを作成する方法
class FrontPage extends WizardPage {
FrontPage() {
super("FrontPage");
setTitle("Listes des joueurs");
setDescription("Veuillez déplacer toutes les listes dans le même fichier (ex: C:\\Badminton\\)");
}
public void createControl(Composite parent) {
Composite composite = new Composite(parent, SWT.NULL);
GridLayout gridLayout = new GridLayout(2, false);
composite.setLayout(gridLayout);
Canvas canvas = new Canvas(composite, SWT.NONE);
canvas.setBounds(10, 10, 693, 253);
canvas.addPaintListener(new PaintListener() {
public void paintControl(PaintEvent e) {
Image image = new Image(null, "C:\\Benoit\\Work\\Java\\Badminton\\Folder_List_Players.png");
e.gc.drawImage(image, 10, 10);
image.dispose();
}
});
setControl(composite);
}
}
をこのコードを実行すると、およそ600 200によってである私のイメージは、サムネイルとして表示されます(10x10)。私はフルサイズで表示したいと思います。
ImageコンストラクタにDisplayオブジェクトが含まれている可能性があることを理解していますが、Composite親オブジェクトで動作させる方法がわかりません。ただし、null Displayオブジェクトでイメージを表示できるのは面白いです。
canvas.setBounds(10、10、693、253);何の影響もないようです。
事前のご意見ありがとうございました!!!
ありがとう、私のイメージは正しく表示されます! –
@BenoitGoderre Display.getCurrent()またはDisplay.getDefault()は、表示を取得するための他の方法です。 – Baz
ありがとうございました! :) –