javajdialog错误:jbutton下的word

sr4lhrrt  于 2021-06-27  发布在  Java
关注(0)|答案(0)|浏览(174)

我制作了一个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);
                }
            }
        });
    }
}

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题