我制作了一个java程序 JButton
在…里面 JDialog
以及 JFrame
班级。我使用eclipseide。如果我将程序导出为可运行的jar文件并启动它 JButton
他们在窃听。下面有一些文字 JButton
但是我看不懂。移动 JButton
把这段文字移到另一个位置,所以这肯定是一个问题 JButton
他们自己。如果有人能帮助我,我会非常高兴,即使我可能忽略了一些简单的事情。
我举了个例子 JFrame
. 当我将程序导出为可运行的jar并首先单击calc按钮,然后用鼠标悬停在其他按钮上时,其他两个按钮下面的文本与主程序中的相同。
package a5_43;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import java.awt.Font;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JList;
import javax.swing.JOptionPane;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class A5_43 extends JFrame {
private static final long serialVersionUID = 1L;
private JPanel contentPane;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
A5_43 frame = new A5_43();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public A5_43() {
setTitle("Programmieren (Manuel Schmid 43)");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 461, 335);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JButton btnCalc_43 = new JButton("calc");
btnCalc_43.setBounds(10, 11, 104, 61);
contentPane.add(btnCalc_43);
DefaultListModel<String> values = new DefaultListModel<String>();
JList<String> listValues = new JList<String>(values);
listValues.setFont(new Font("Tahoma", Font.PLAIN, 20));
listValues.setBounds(124, 11, 314, 131);
contentPane.add(listValues);
JButton btnDeleteSelected_43 = new JButton("Delete selected");
btnDeleteSelected_43.setBounds(124, 153, 314, 61);
contentPane.add(btnDeleteSelected_43);
JButton btnDeleteAll_43 = new JButton("Delete everything");
btnDeleteAll_43.setBounds(124, 225, 314, 61);
contentPane.add(btnDeleteAll_43);
btnCalc_43.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
try {
values.clear();
values.addElement("grösste Zahl: " + 4);
values.addElement("Mittelwert: " + 5);
values.addElement("Quersumme grösste Zahl: " + 6);
btnDeleteAll_43.setEnabled(true);
}
catch(NumberFormatException e1)
{
JOptionPane.showMessageDialog(null, "Bitte nur Zahlen eingeben", "Fehler", JOptionPane.ERROR_MESSAGE);
}
}
});
}
}
暂无答案!
目前还没有任何答案,快来回答吧!