更改特殊插件向导的徽标
changing the logo of wizards of special plugin
当我为我的 java 插件设置徽标时,eclipse
的其他 windows 的徽标被更改。
我有一个 class,它扩展了 Wizard
并实现了 IObjectActionDelegate
。然后,我覆盖了 run
函数并在其中编写了以下代码。
wizard = new StartWizard();
dialog = new WizardDialog(Display.getDefault().getActiveShell(), wizard);
Bundle bundle = Platform.getBundle("Plugin");
URL url = FileLocator.find(bundle, new Path("icon/Logo.png"), null);
ImageDescriptor desc = ImageDescriptor.createFromURL(url);
Image image = desc.createImage();
WizardDialog.setDefaultImage(image);
我已阅读 Only changing the logo of special plugin 上针对类似 post 提出的解决方案。问题是我已经扩展了 Wizard
而不能扩展 WizardDialog
。
由于您是自己创建 WizardDialog
,因此您实际上可以根据需要扩展 class。
在 Wizard
中,您可以通过调用以下方式获取当前 Shell
:
Shell shell = getContainer().getShell();
shell.setImage(your image);
向导 addPages
方法似乎适合此代码。
当我为我的 java 插件设置徽标时,eclipse
的其他 windows 的徽标被更改。
我有一个 class,它扩展了 Wizard
并实现了 IObjectActionDelegate
。然后,我覆盖了 run
函数并在其中编写了以下代码。
wizard = new StartWizard();
dialog = new WizardDialog(Display.getDefault().getActiveShell(), wizard);
Bundle bundle = Platform.getBundle("Plugin");
URL url = FileLocator.find(bundle, new Path("icon/Logo.png"), null);
ImageDescriptor desc = ImageDescriptor.createFromURL(url);
Image image = desc.createImage();
WizardDialog.setDefaultImage(image);
我已阅读 Only changing the logo of special plugin 上针对类似 post 提出的解决方案。问题是我已经扩展了 Wizard
而不能扩展 WizardDialog
。
由于您是自己创建 WizardDialog
,因此您实际上可以根据需要扩展 class。
在 Wizard
中,您可以通过调用以下方式获取当前 Shell
:
Shell shell = getContainer().getShell();
shell.setImage(your image);
向导 addPages
方法似乎适合此代码。