Programmieren - alles kontrollieren 4.939 Themen, 20.672 Beiträge

Frage zu Java

Fäbu / 7 Antworten / Flachansicht Nickles

Hallo Leute,
Ich wollte mich mal ein wenig mit Java beschäftigen,
aber ich hab nicht mal ein kleines programm zum laufen
gebracht. Ich wollte nur mal um die Grundfunktionen
ausprobieren ein kleines testfeld erstellen, bei dem sich
bei knopfdruck der inhalt ändert, eigentlich simpel, habs
aber trozdem nicht fertiggebrecht, kann mir vieleicht jemand
sagen was denn hier nicht stimmt:

---------------------------------------------------
package first;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/**
* Title:
* Description:
* Copyright: Copyright (c) 2001
* Company:
* @author
* @version 1.0
*/

public class Frame1 extends JFrame {
JPanel contentPane;
BorderLayout borderLayout1 = new BorderLayout();
JButton jButton1 = new JButton();
JTextArea jTextArea1 = new JTextArea();

/**Construct the frame*/
public Frame1() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
/**Component initialization*/
private void jbInit() throws Exception {
jButton1.setText("press");
//setIconImage(Toolkit.getDefaultToolkit().createImage(Frame1.class.getResource("[Your Icon]")));
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(borderLayout1);
this.setSize(new Dimension(477, 82));
this.setTitle("Java");
jTextArea1.setText("");
contentPane.add(jButton1, BorderLayout.SOUTH);
contentPane.add(jTextArea1, BorderLayout.NORTH);
}
void jButton1_actionPerformed(ActionEvent e)
{
jTextArea1.setText("hallo");
}

/**Overridden so we can exit when window is closed*/
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
}
---------------------------------------------------

Beim Debuggen gibts keine Fehler, aber wenn das
Programm läuft und ich aufs Knöpfchen drücke
passiert nichts... :-)

thx

Fabian

bei Antwort benachrichtigen
(Anonym) Fäbu „Frage zu Java“
Optionen

Versuch es mal mit dem folgenden Quelltext:
import java.awt.event.*; // Fuer das Eventhandling ueber den Button
import java.awt.*; //
import javax.swing.*;//Fuer das ganze drumherum: Button Frame, Panel....

class ButtonPress implements ActionListener{ //implementieren des ActionListener Interfaces; keine Lust etwas zu erben.

JFrame frame = new JFrame("Hit Me"); // Frameinstanz erstellen, inkl Headline Hit Me
JButton knopp = new JButton("Drueck mich"); // Button mit Text erstellen
JLabel label = new JLabel();// Label erstellen, der Text kann geändert werden
String text1 = "Erst 1.."; // Text der zuerst erscheint
String text2 = "..dann 2";// folgender Text
JPanel panel = new JPanel();//

public void fenster(){
knopp.addActionListener(this);// Damit der Knopp auch was macht bekommt er einen Listener, this bezeichnet den Listener der eigenen Klasse

label.setText(text1); //Label beschreiben
panel.setLayout(new GridLayout(1,1));//Layout fuer das Panel bestimmen
panel.add(knopp); // Button auf das Panel
panel.add(label); // Label auf das Panel
frame.getContentPane().add(panel); // Das Panel auf das Fenster legen

frame.setVisible(true); // Fenster sichtbar machen
frame.pack(); //Inhalte von Java anordnen lassen
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//Damit man das Fenster auch schliessen kann.
}
public void actionPerformed(ActionEvent e){ //Uerberschreiben der Mehtode aus dem Interface
if (label.getText().equals("Erst 1..")) // Welche Aufschrift traegt der Knopp, wenn text1 dann text2 und umgekehrt.
label.setText(text2);
else
label.setText(text1);
}
public static void main(String args[]){

ButtonPress test = new ButtonPress(); //Instanz von der Klasse erstellen
test.fenster(); // Methode fenster aufrufen
}
}

bei Antwort benachrichtigen