Frage von flawlessW, 19

Java AWT Textfeld / Anfänger?

Hallo! Im folgenden Programm möchte ich ein Textfeld hinzufügen. Könnte mir jemand helfen wie es funktioniert? :)

package Grundlagen;

import java.awt.Frame;
import java.awt.Graphics;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;

public class Window extends Frame {

int x1,y1,x2,y2,count=0;
char key=' ';

public Window() {
    super();
    
    this.setTitle("Erstes AWT-Programm");
    this.setSize(300, 300);
    
    WindowListener wl = new WindowAdapter(){

        @Override
        public void windowClosing(WindowEvent arg0) {
            System.exit(0);
        }
    };
    
    MouseListener ml = new MouseAdapter(){

        @Override
        public void mouseClicked(MouseEvent arg0) {
            
            System.out.println("Maus gedrueckt bei: "
            + arg0.getX() + ", " + arg0.getY());
            
            if(count==0){
                x1 = arg0.getX();
                y1 = arg0.getY();
                count++;
            }
            else{
                x2 = x1;
                y2 = y1;
                x1 = arg0.getX();
                y1 = arg0.getY();
                count++;
            }
            repaint();
        }
    };
    
    KeyListener kl = new KeyAdapter(){

        @Override
        public void keyTyped(KeyEvent arg0) {
            key= arg0.getKeyChar();
            repaint();
        }
    };

    this.addKeyListener(kl);
    this.addMouseListener(ml);
    this.addWindowListener(wl);
    this.setVisible(true);
}

public void paint(Graphics g){
    g.drawString(getTitle(), 50, 60 );
    g.drawString("Maus gedrueckt bei:  " + x1 + ", " + y1, 50, 250);
    g.drawString("Taste: "+key, 50, 230);
}

public static void main(String[] args) {
    
    new Window();
   }
}
Antwort
von MarcelDavis321, 11

TextField tf1 = new TextField();

tf1.setVisible(true);

tf1.setBounds...

tf1.setSize...

this.add(tf1);

in den Konstruktor

Kommentar von flawlessW ,

Wie kann ich das Textfeld skalieren, sodass es nur in einen kleinen Bereich sichtbar ist? Mit dem setBounds usw. passiert irgendwie nichts.

Keine passende Antwort gefunden?

Fragen Sie die Community