gpt4 book ai didi

java - 如何在 JFrame 中设置默认图标?

转载 作者:行者123 更新时间:2023-11-30 07:22:00 25 4
gpt4 key购买 nike

所以我在制作 Java,并制作了一个不错的小程序。这是代码:

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;

public class aa extends JFrame{
private JButton jb;
private JTextField jt0;
private JTextField jt1;
private JTextField jt2;
int jti1;
int jti2;

public aa(){
jb = new JButton(">> FIGHT <<");
jt0 = new JTextField("", 25);
jt1 = new JTextField("", 25);
jt2 = new JTextField("<< BATTLE VICTOR >>", 35);
jt0.setText("");
jt2.setEditable(false);

jb.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if(jt0.getText().length() > jt1.getText().length())
jt2.setText((jt0.getText() + " << IS VICTORIUS OVER >> " + jt1.getText()));
else if(jt1.getText().length() > jt0.getText().length())
jt2.setText((jt1.getText() + " << IS VICTORIUS OVER >> " + jt0.getText()));
else if(jt1.getText().length() == jt0.getText().length())
jt2.setText((jt1.getText() + " << TIED >> " + jt0.getText()));
};
}
);

add(jt0, BorderLayout.NORTH);
add(jt1, BorderLayout.NORTH);
add(jt2, BorderLayout.NORTH);
add(jb, BorderLayout.CENTER);
}
}

这是运行脚本:

import java.awt.FlowLayout;
import java.awt.Image;
import javax.swing.ImageIcon;
import javax.swing.JFrame;

public class a{
public static void main(String[] args){
aa b = new aa();

b.setLayout(new FlowLayout());
b.setTitle("BattleWords");
b.setSize(420, 150);
b.setVisible(true);
b.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}

到目前为止,我已经尝试了整个 setIconImage() 废话,但没有用。我想添加 png 或 gif 或 ico 图像。我应该把它放在哪里?代码去哪里了,它看起来怎么样?

最佳答案

您实际上使用了 JFrame.setIconImage()。下面是一个代码示例,它可能出现在 JFrame 的构造函数中,甚至更好的出现在 initComponents 方法中:

try {
Image image = ImageIO.read(aa.class.getResource("/TestImage.png"));
setIconImage(image);
} (IOException e) {
// handle exception
}

图像 TestImage.png 将位于类文件所在的根文件夹中。这个

关于java - 如何在 JFrame 中设置默认图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13020702/

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