我想在我的应用程序中重用Eclipse的关于对话框。我需要做的是在aboutText中添加图像,超链接和图像链接,但是在aboutText中似乎只有超链接是可能的?有没有办法添加图像/图像链接,而不提供我自己的关于对话框实现?如何自定义Eclipse关于对话框的文本?
谢谢,
我想在我的应用程序中重用Eclipse的关于对话框。我需要做的是在aboutText中添加图像,超链接和图像链接,但是在aboutText中似乎只有超链接是可能的?有没有办法添加图像/图像链接,而不提供我自己的关于对话框实现?如何自定义Eclipse关于对话框的文本?
谢谢,
使用JDialog
。您可以在其中添加JPanel
对象。您可以将图像,超链接,文本,标签放入JPanel中。所以它应该是微不足道的。
看看这个代码片段并测试它。您也可以使用HTML标记来引用外部图片网址。看看这个行:
creditsLabel.setText("<HTML><IMG SRC=\"http://siesbilkent.appspot.com/images/admin.png\"></IMG></HTML>");
示例代码:
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class MyDialog extends JDialog
{
private JLabel creditsLabel;
public MyDialog (JFrame frame)
{
super(frame, "Credits", true);
JPanel panel = new JPanel(new FlowLayout());
panel.setBackground(new Color(255, 0, 128));
creditsLabel = new JLabel();
creditsLabel.setText("<HTML><IMG SRC=\"http://siesbilkent.appspot.com/images/admin.png\"></IMG></HTML>");
panel.add(creditsLabel);
this.getContentPane().add(panel);
this.setPreferredSize(new Dimension(240, 160));
this.pack();
this.setLocationRelativeTo(null);
this.setResizable(false);
}
public static void main (String [] args)
{
MyDialog dialog = new MyDialog(new JFrame());
dialog.setModal(true);
dialog.setVisible(true);
}
}
感谢您的回答。但是我正在谈论的是重用/配置Eclipse IDE关于对话框的aboutText,而不创建自己的对话框。如果我必须重写Eclipse的AboutDialog,那么应该使用SWT来代替Swing,但它目前不是我的选择。 – 2012-02-15 18:32:54
对不起,刚才看到我的问题中添加的JDialog/Swing的标签,我不打算这样做。 – 2012-02-15 19:12:13
如果你正在寻找定制基于Eclipse的应用程序/产品,然后看看这个manual。有三个文件控制品牌:about.ini
,about.properties
和about.html
。您可以使用about.html
作为图片链接。
感谢您的建议。看来about.html不是初始页面上的图像链接:“每一个功能和插件应该包括一个about.html文件这是当用户打开Eclipse的关于对话框将显示一个简单的HTML文件,打开。插件Details对话框中,选择插件,然后点击More Info按钮” – 2012-02-15 19:21:32
如果我提供的代码按照您所需的方式工作,请通过单击将其视为已接受的答案。 – Juvanis 2012-02-15 17:50:39
那是Eclipse RCP应用程序吗? – tenorsax 2012-02-15 18:48:51
是的,它是一个Eclipse RCP应用程序。看起来大约文字没有任何选项来添加图像/图像链接,或透视名称/图标时,透视变化。 – 2012-02-15 19:11:32