gpt4 book ai didi

java - setTitleImage 和 FileLocator

转载 作者:行者123 更新时间:2023-12-02 12:00:47 25 4
gpt4 key购买 nike

我将在java插件中设置jface对话框的标题图像。当我编写下面的代码时,出现错误。找不到该文件。我该怎么办?

Bundle bundle = Platform.getBundle("Layout");
URL url = FileLocator.find(bundle, new Path("icon/c.png"), null);
image = new Image(Display.getDefault(), url.toString());
setTitleImage(image);

最佳答案

FileLocator.find 返回的 URL 使用特殊的“协议(protocol)”值,该值只能被 Eclipse 和 JFace 代码理解(类似于 bundleentry://84.fwk537066525/icon/c .png)。 SWT 代码(例如 Image)无法识别 URL。

最好的办法是从 JFace ImageDescriptor 创建 Image:

ImageDescriptor desc = ImageDescriptor.createFromURL(url);

Image image = desc.createImage();

您还可以使用 FileLocator.toFileURL 但这可能会导致插件被解压,因此在这种情况下应该避免使用,因为有更好的替代方案。

关于java - setTitleImage 和 FileLocator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47266169/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com