如何在单个JLabel中更改多个数字?

时间:2013-08-14 23:26:49

标签: java jbutton jlabel

我有一个名为btnUp的JButton,以及一个名为lblCount的JLabel。
lblCount的Text属性为" 0/10"。

当我点击btnUp时,我想将标签的分子增加1,并将其分母减1,这样它就会显示" 1/9",一直到#&# 34; 10/0"

我将如何做到这一点?

1 个答案:

答案 0 :(得分:2)

这不会停在“10/0”。我相信你可以自己解决这个问题。

package com.sandbox;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.WindowConstants;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;

public class SwingSandbox {

    public static void main(String[] args) throws IOException {
        JFrame frame = buildFrame();

        JPanel pane = new JPanel();

        JButton button = new JButton();
        final JLabel label = new JLabel("0/10");
        button.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                String[] parts = label.getText().split("/");
                int left = Integer.valueOf(parts[0]) + 1;
                int right = Integer.valueOf(parts[1]) - 1;
                label.setText(left + "/" + right);
            }
        });

        pane.add(button);
        pane.add(label);


        frame.add(pane);
    }


    private static JFrame buildFrame() {
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        frame.setSize(200, 200);
        frame.setVisible(true);
        return frame;
    }


}