不兼容的类型 JOptionPane java 字符串到 png
Incompatible Types JOptionPane java string to png
好吧,我这里有一个小问题,我想将图像添加到 JOptionPane 但我不能,因为我正在将它转换为字符串!我不知道怎么解决!帮助!这是代码:
import javax.swing.JOptionPane;
import javax.swing.ImageIcon;
public class TextBox {
ImageIcon icon0 = new ImageIcon("Picture2_2.png");
String user_input = JOptionPane.showInputDialog(null, "Please enter a card number!", "¡Tu puedes!", JOptionPane.INFORMATION_MESSAGE,icon0,null,"");
public static void main (String [] args)
{
int g = -1;
while (g<0)
{
TextBox n = new TextBox();
if(n.user_input.length() > 0 )
{
numbersreader t= new numbersreader();
t.checkLuhn (n.user_input);
g++;
}else
{
ImageIcon icon1 = new ImageIcon("Picture2_2.png");
JOptionPane.showInputDialog(null, "Please enter a card number!", "¡Ya valio!", JOptionPane.INFORMATION_MESSAGE,icon1, null, "");
}
}
}
}
如果不是因为这个代码确实有效,下面是一个有效的代码版本,但我真的想把那张图片放在那个 JOptionPane 中,一定有办法!
import javax.swing.JOptionPane;
import javax.swing.ImageIcon;
public class TextBox {
String user_input = JOptionPane.showInputDialog(null, "Please enter a card number!", "¡Tu puedes!", JOptionPane.INFORMATION_MESSAGE);
public static void main (String [] args)
{
int g = -1;
while (g<0)
{
TextBox n = new TextBox();
if(n.user_input.length() > 0 )
{
numbersreader t= new numbersreader();
t.checkLuhn (n.user_input);
g++;
}else
{
ImageIcon icon1 = new ImageIcon("Picture2_2.png");
JOptionPane.showInputDialog(null, "Please enter a card number!", "¡Ya valio!", JOptionPane.INFORMATION_MESSAGE,icon1, null, "");
}
}
}
}
当我尝试编译您的代码时,编译器告诉我“错误:类型不兼容:对象无法转换为字符串”。
那是因为 JOptionPane.showInputDialog()
return 是一些对象,但是在第 6 行你试图将 return 值分配给 String
变量。
将第 6 行更改为
后
String user_input = (String) JOptionPane.showInputDialog(null, "Please enter a card number!", "¡Tu puedes!", JOptionPane.INFORMATION_MESSAGE,icon0,null,"");
(并提供一个 png 文件“Picture2_2.png”和一个 class numbersreader
方法 void checkLuhn(String s) {}
)我可以编译并 运行 你的代码.
好吧,我这里有一个小问题,我想将图像添加到 JOptionPane 但我不能,因为我正在将它转换为字符串!我不知道怎么解决!帮助!这是代码:
import javax.swing.JOptionPane;
import javax.swing.ImageIcon;
public class TextBox {
ImageIcon icon0 = new ImageIcon("Picture2_2.png");
String user_input = JOptionPane.showInputDialog(null, "Please enter a card number!", "¡Tu puedes!", JOptionPane.INFORMATION_MESSAGE,icon0,null,"");
public static void main (String [] args)
{
int g = -1;
while (g<0)
{
TextBox n = new TextBox();
if(n.user_input.length() > 0 )
{
numbersreader t= new numbersreader();
t.checkLuhn (n.user_input);
g++;
}else
{
ImageIcon icon1 = new ImageIcon("Picture2_2.png");
JOptionPane.showInputDialog(null, "Please enter a card number!", "¡Ya valio!", JOptionPane.INFORMATION_MESSAGE,icon1, null, "");
}
}
}
}
如果不是因为这个代码确实有效,下面是一个有效的代码版本,但我真的想把那张图片放在那个 JOptionPane 中,一定有办法!
import javax.swing.JOptionPane;
import javax.swing.ImageIcon;
public class TextBox {
String user_input = JOptionPane.showInputDialog(null, "Please enter a card number!", "¡Tu puedes!", JOptionPane.INFORMATION_MESSAGE);
public static void main (String [] args)
{
int g = -1;
while (g<0)
{
TextBox n = new TextBox();
if(n.user_input.length() > 0 )
{
numbersreader t= new numbersreader();
t.checkLuhn (n.user_input);
g++;
}else
{
ImageIcon icon1 = new ImageIcon("Picture2_2.png");
JOptionPane.showInputDialog(null, "Please enter a card number!", "¡Ya valio!", JOptionPane.INFORMATION_MESSAGE,icon1, null, "");
}
}
}
}
当我尝试编译您的代码时,编译器告诉我“错误:类型不兼容:对象无法转换为字符串”。
那是因为 JOptionPane.showInputDialog()
return 是一些对象,但是在第 6 行你试图将 return 值分配给 String
变量。
将第 6 行更改为
后String user_input = (String) JOptionPane.showInputDialog(null, "Please enter a card number!", "¡Tu puedes!", JOptionPane.INFORMATION_MESSAGE,icon0,null,"");
(并提供一个 png 文件“Picture2_2.png”和一个 class numbersreader
方法 void checkLuhn(String s) {}
)我可以编译并 运行 你的代码.