2

誰かがこれで私を助けることができるかどうか疑問に思います. Eclipse RAP アプリケーションで組み込みブラウザーを開こうとしています。私が見たすべての例は次のようになります。

link.addSelectionListener(new SelectionAdapter() {
    @Override
    public void widgetSelected(SelectionEvent event) {
        try {
            Browser b = new Browser(parent, SWT.NONE);
            b.setText("<html><body>This is Unicode HTML content from memory</body></html>"); 
        } catch (SWTError e) {
            // Error handling here
        }

    }
});

しかし、それは(視覚的に)何もしません。Browser を ExternalBrowser に置き換えると、次のようになります。

link.addSelectionListener(new SelectionAdapter() {
    @Override
    public void widgetSelected(SelectionEvent event) {
        try {
            int browserStyle = ExternalBrowser.LOCATION_BAR;
            ExternalBrowser.open( "myPage", "http://www.stackoverflow.com", browserStyle );
        } catch (SWTError e) {
              // Error handling here
        }

    }
});

できます。希望どおりではありませんが。

OS X 10.8.2 で Eclipse RCP 1.4.2 を使用しています。

どんな洞察も高く評価されます。

4

1 に答える 1

1

新しいウィジェットを作成するときは、再レイアウトをトリガーして表示できるようにする必要があります。レイアウトによっては、 を呼び出すだけで十分な場合がありますparent.layout()。親もレイアウトに含まれており、適切なサイズに縮小されている場合はlayout()、その親を呼び出す必要があります。不明な場合は、最上位シェルをレイアウトします。

于 2012-10-31T10:55:04.493 に答える