Создать текстовое поле и связать с кнопками - Java
Формулировка задачи:
Дана программа, надо добавить в нее текстовое поле, такое,что при вводе числа на кнопке выводилось это число
Первую часть я сделал, добавил текст, а вот как связать ее с кнопкой не пойму. Точнее надо что-то с count сделать.
Листинг программы
- package io;
- import java.awt.*;
- import javax.swing.*;
- import java.awt.event.*; // Eventhandling
- public class MyCountingFrame extends JFrame {
- /**
- * Da JFrame das Serializable Interface implementiert, sollte diese UID
- * definiert werden. Wir setzten sie der Einfachheit halber auf 1:
- */
- private static final long serialVersionUID = 1L;
- /** Variablendeklarationen von JButton aus dem Konstruktor verschoben */
- private JButton button;
- /** Zaehlrichtung: true = aufwaerts */
- private boolean richtung = true;
- /** Anzahl Klicks */
- private int count = 0;
- /** Konstruktor */
- public MyCountingFrame() {
- /*
- * Fenster konfigurieren:
- */
- // Frame-Erzeugung ueber Konstruktor von JFrame
- super("My Counting Frame");
- // Groesse des Frames
- this.setBounds(100, 100, 350, 420);// первый две это точки на экране,где они окно будет выходить, вторые две это ширина и высота окна
- // Schliesse das Fenster bei Klick auf das Kreuz
- this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- // Anlegen einer Menuzeile
- JMenuBar menubar = new JMenuBar();
- // Eintragen der Menuzeile in den Frame
- this.setJMenuBar(menubar);
- // Anlegen eines Eintrags in der Menuezeile
- JMenu myMenu = new JMenu("Mein Menue");
- // Eintragen des Menupunkts in die Menuezeile
- menubar.add(myMenu);
- // Menuunterpunkt "Reset" anlegen
- JMenuItem resetItem = new JMenuItem("Reset");
- // und in das Menu myMenu eintragen
- myMenu.add(resetItem);
- // Zugriff auf geerbten ContentPane
- Container conPane = this.getContentPane();
- // Anlegen eines Panelbereichs
- JPanel panel = new JPanel();
- // Eintragen des Panels in den Frame
- conPane.add(panel);
- /*JTextField text1 = new JTextField(20);
- add(text1);*/
- /*
- * Inhalte des Panels definieren:
- */
- // Erzeugen eines Buttons
- button = new JButton("Click me");
- // und Eintragen in das ContentPane
- panel.add(button);
- // RadioButtons anlegen, "aufwaerts" ist initial markiert
- JRadioButton auf = new JRadioButton("aufwaerts", true);
- JRadioButton ab = new JRadioButton("abwaerts");
- // und zum Panel hinzufuegen
- panel.add(auf);
- panel.add(ab);
- // Zusammenfassen der RadioButtons zu einer Gruppe
- ButtonGroup group = new ButtonGroup();
- group.add(auf);
- group.add(ab);
- //JTextField hinzufugen// [B]Создал поле для текста[/B]
- JTextField text1 = new JTextField(20);////////////////////////////
- panel.add(text1);
- // Anzeigen des Frames
- setVisible(true);
- /*
- * Definition und Anmelden der ActionListener:
- */
- // Klicken auf die RadioButtons "auf" und "ab"
- auf.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent evt) {
- // Setze Richtung = 'aufwaerts'
- richtung = true;
- }
- });
- ab.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent evt) {
- // Setze Richtung = 'abwaerts'
- richtung = false;
- }
- });
- // Klicken auf button
- button.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent evt) {
- buttonActionPerformed();
- }
- });
- // Klicken auf das MenuItem "Reset"
- resetItem.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent evt) {
- resetActionPerformed();
- }
- });
- } // Ende des Konstruktors MyCountingFrame()
- /*
- * DEFINITION DER von den ActionListenern verwendeten METHODEN:
- */
- /** Aktionen nach Klick auf Button */
- private void buttonActionPerformed() {
- if (richtung)
- count++; // Aufwaerts zaehlen
- else
- count--; // Abwaerts zaehlen
- button.setText("bis " + count + " gezaehlt");
- }
- /** Aktionen nach Klick auf Reset */
- private void resetActionPerformed() {
- button.setText("Click me");
- count = 0;
- richtung = true;
- }
- /**
- * Main Methode: Erzeugen des Fensters
- */
- public static void main(String args[]) {
- new MyCountingFrame();
- }
- }
тема для Java GUI & JavaFX
Решение задачи: «Создать текстовое поле и связать с кнопками»
textual
Листинг программы
- String displayLabel = text1.getText();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д