[英]How to display an icon on JOptionPane.showInputDialog() in Java?
[英]Custom icon JOptionPane.showInputDialog
我正在尝试将自定义图标放在JOptionPane.showMessageDialog
但出现错误
public static String input (String message)
{
ImageIcon icon = new ImageIcon("alien.jpg");
String text = message;
return JOptionPane.showInputDialog(null,text,"Alien Pet Game",JOptionPane.INFORMATION_MESSAGE,icon,null,"");
}
这是我的错误:
error: incompatible types: Object cannot be converted to String return JOptionPane.showInputDialog(null,text,"Alien Pet Game",JOptionPane.INFORMATION_MESSAGE,icon,null,"");
我该怎么办?
编辑:您可以选择将对象转换为字符串。
1- 检查您的消息是否不为空并将返回语句转换为字符串。
2-您可以调用 toString()
3-String.valueOf() - 您将避免 toString() 的空异常问题。
在这里参考上面的项目:( Java:JTable 更改侦听器,“对象无法转换为字符串”错误
return (String) JOptionPane.showInputDialog(null,text,"Alien Pet Game",JOptionPane.INFORMATION_MESSAGE,icon,null,"");
编辑方法:
public static void main(String[] args) {
input("Hi");
}
public static String input(String message){
ImageIcon icon = new ImageIcon("alien.jpg");
String text = message;
if(text != null)
return (String) JOptionPane.showInputDialog(null,text,"Alien Pet Game",JOptionPane.INFORMATION_MESSAGE,icon,null,"");
/* else
return Alternative*/
return null;
}
您的方法将字符串变量作为参数,并且您尝试返回 JOptionPane 对象,只需将该对象存储在字符串变量中
String s = JOptionPane.showInputDialog(message));
并返回该变量 's'
您对图标的使用(可能)没有任何问题。 该错误指的是 showInputDialog 的返回值,它是一个对象,您正在调用一个字符串。 您需要做的就是将您的返回值转换为 String:
return (String) JOptionPane.showInputDialog(null,text,"Alien Pet Game",JOptionPane.INFORMATION_MESSAGE,icon,null,"");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.