AWT から eclipse SWT プラグインにコードを適応させようとしています。更新の問題に直面しています。テーブル (AWT) のビューとチャート (AWT) の別のビューがあります。個別には問題ありませんが、両方を追加すると、チャート ビューでのみ更新の問題に直面しています。アドバイスはありますか?? 前もって感謝します。
質問する
514 次
1 に答える
0
SWT ビューに JPanel を埋め込むために私がしなければならなかったことは次のとおりです。
Composite videoComposite = new Composite(panel,
SWT.EMBEDDED | SWT.BORDER | SWT.NO_BACKGROUND);
videoComposite.setLayout(new FillLayout());
videoComposite.setLayoutData(new GridData(
SWT.CENTER, SWT.CENTER, true, true, 1, 1));
CLabel videoImage = new CLabel(videoComposite, SWT.SHADOW_IN);
videoImage.setImage(dummyVideo);
frame = SWT_AWT.new_Frame(videoComposite);
SwingUtilities.invokeLater(new Runnable() {
public void run() {
setLookAndFeel();
applet = new JApplet();
applet.setFocusCycleRoot(false);
mediaPanel = rabidVideo.getVideoPanel(false);
applet.add(mediaPanel);
frame.add(applet);
}
});
ここframe
でFrame
、 は 、applet
はJApplet
、mediaPanel
は の拡張ですJPanel
。
ここにありsetLookAndFeel
ます:
protected void setLookAndFeel() {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException e) {
EclipseLogging.logError(RabidPlugin.getDefault(),
RabidPlugin.PLUGIN_ID, e);
} catch (InstantiationException e) {
EclipseLogging.logError(RabidPlugin.getDefault(),
RabidPlugin.PLUGIN_ID, e);
} catch (IllegalAccessException e) {
EclipseLogging.logError(RabidPlugin.getDefault(),
RabidPlugin.PLUGIN_ID, e);
} catch (UnsupportedLookAndFeelException e) {
EclipseLogging.logError(RabidPlugin.getDefault(),
RabidPlugin.PLUGIN_ID, e);
}
}
于 2012-04-27T15:09:34.600 に答える