Подсчет количества кликов - Java - Java

  1. Как сделать, чтобы количество кликов отбражалось е в консоли, а в самом окне? Что добавить в код? Ответьте пожалуйста. Зарание спасибо.


textual

Код к задаче: «Подсчет количества кликов - Java - Java»

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
 
public class MainClick extends JFrame {
    private JButton jButton;
    private JTextField jTextField;
    private JLabel jLabel;
    private JPanel jPanel;
    private int clickCounter;
 
    public MainClick() throws HeadlessException {
        jButton = new JButton("Press Me");
        jTextField = new JTextField("0");
        jLabel = new JLabel("Mouse clicks:");
 
        JPanel jp = new JPanel(new GridLayout(1, 3));
        jp.add(jLabel);
        jp.add(jTextField);
        jp.add(jButton);
 
        jButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                JOptionPane.showMessageDialog(getContentPane(), "Clicks: "+clickCounter);
                clickCounter = 0;
                jTextField.setText(""+clickCounter);
            }
        });
 
        jPanel = new JPanel();
        jPanel.setBackground(new Color(0x62D2A6));
        jPanel.addMouseListener(new MouseAdapter() {
 
            @Override
            public void mousePressed(MouseEvent e) {
                clickCounter++;
                jTextField.setText(""+clickCounter);
 
            }
        });
        clickCounter = 0;
 
        //setLayout(new FlowLayout());
 
        add(jp, BorderLayout.NORTH);
        add(jPanel);
 
    }
 
 
    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                JFrame jFrame = new MainClick();
                jFrame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
                jFrame.setSize(400, 200);
                jFrame.setLocationRelativeTo(null);
                jFrame.setVisible(true);
                JOptionPane.showMessageDialog(jFrame.getContentPane(), "Click on green field! ");
 
            }
        });
    }
}

СДЕЛАЙТЕ РЕПОСТ

9   голосов, оценка 4.111 из 5



Похожие ответы
  1. Хочу подсчитать количество кликов, это тестовый кусочек программы для другой проги. В чем собственно проблема. Имеется два класса: первый - где основная движуха Main, второй - класс для обработки события, в частности клика мышки. Если писать класс один за другим, то все работает в порядке, но в главном классе тогда нет доступа к переменной sum, в которой сохранено количество кликов. Если же поместить класс-обработчик внутрь главного класса, то переменная станет доступной, но почему-то в строке "MyMouse listener = new MyMouse();" выдается ошибка, подчеркнуто все что после знака равно. Пишет: "'Main.this' cannot be referenced from a static context". Объясните пожалуйста, что это значит и как решить эту проблему. Заранее благодарен.

  1. Доброго времени суток. У меня есть класс, который не дает вводить ничего кроме цифр и точки в текстовое поле JTextField. Можно ли добавить к этому классу какой-то код, чтобы до точки максимум можно было вводить 2 цифры, а после точки максимум - 3 цифры. То есть например, 2.456, 56.1, 99,999, но например, 234.1, 2.3456 - не можно было вводить.