Fragen zu einem Beispiel(Swings und AWT)

Status
Nicht offen für weitere Antworten.

swerflash

Aktives Mitglied
Code:
package swings_project;

import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;

public class klick_mich_2_mit_info extends JApplet
{
	private JButton b1 = new JButton("Button 1"), b2 = new JButton("Button 2");

	private JTextField txt = new JTextField(10);

	class ButtonListener implements ActionListener
	{
		public void actionPerformed(ActionEvent e)
		{
			String name = ((JButton) e.getSource()).getText();
			txt.setText(name);
		}
	}

	private ButtonListener bl = new ButtonListener();

	public void init()
	{
		b1.addActionListener(bl);
		b2.addActionListener(bl);
		Container cp = getContentPane();
		cp.setLayout(new FlowLayout());
		cp.add(b1);
		cp.add(b2);
		cp.add(txt);
	}

	public static void main(String[] args)
	{
		run(new klick_mich_2_mit_info(), 200, 100);
	}

	public static void run(JApplet applet, int width, int height)
	{
		JFrame frame = new JFrame();
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.getContentPane().add(applet);
		frame.setSize(width, height);
		applet.init();
		applet.start();
		frame.setVisible(true);
	}
}

ich schaue mir gerade ein Bsp an zu Swings, und manches verstehe ich hier nicht.

1.
Code:
private JTextField txt = new JTextField(10);

Diese 10 am Ende bedeutet, dass dieser Text maximal aus 10 Zeichen bestehen kann?

2.
Code:
class ButtonListener implements ActionListener
class ButtonListener = erfundene Klasse?
Dann erbt diese Klasse ActionListener. In der API steht zu ActionListener folgendes:

The listener interface for receiving action events. The class that is interested in processing an action event implements this interface, and the object created with that class is registered with a component, using the component's addActionListener method. When the action event occurs, that object's actionPerformed method is invoked.

Könnte jemand bitte das auf Deutsch übersetzen und so einfach wie es geht erklären? ^^ Also mit ganz einfachen Wörtern. Habe das mit einem Online Übersetzer übersetzt und nichts verstanden.


3.
Code:
public void actionPerformed(ActionEvent e)

Diese Methode gehört zu ActionListener oder? Wenn ich API richtig verstehe, dann ist das auch die einzige, muss ich wissen was diese Methode macht? Wenn ja dann bitte erklären :bae:

in der API steht
Invoked when an action occurs
und was heißt das auf Deutsch?


4.
Code:
public void init()
Was macht diese Methode?

5.
Code:
Container cp = getContentPane();

In der API steht :

A generic Abstract Window Toolkit(AWT) container object is a component that can contain other AWT components.

Components added to a container are tracked in a list. The order of the list will define the components' front-to-back stacking order within the container. If no index is specified when adding a component to a container, it will be added to the end of the list (and hence to the bottom of the stacking order).

Habe das natürlich auch nicht verstanden :cry: . Bitte erklären :). Und was macht getContentPane(); konnte diese Methode in dieser Klasse nicht finden.

Ok das wars fürs Erste :bae:

Danke im Voraus
 

swerflash

Aktives Mitglied
Hehe, waren das zu viele Fragen auf einmal? :bae: Aber die sind wichtig, dann werde ich bestimmt viel mehr verstehen, fals ich die Antworten auf meine Frage kenne. Also fals jemand Zeit und Lust hat mir die zu antworten, dann wäre ich sehr dankbar :D
 

Oni

Top Contributor
Zu 1. ja, 10 ist die sichbare länge des textfeld (zeichen kannst du mehr reinschreiben)

Zu 2 und 3.
swerflash hat gesagt.:
class ButtonListener = erfundene Klasse?
Dann erbt diese Klasse ActionListener. In der API steht zu ActionListener folgendes:
nicht ganz, die klasse erbt nicht von actionlistener, sonder die eigene klasse(erfundene klasse) implmentiert das interface/schnittstelle actionlistener und weil sie das interface implementiert muss man auch die methode-actionperformed in der klasse haben

mein englisch ist nicht so toll, deshalb versuche ich das nicht zu übersetzen :wink:

in eignen worten: wenn du z.B einen button erstellt, dann sagst du dem actionlistener, er soll den button kontrollieren und wenn etwas passiert (z.B button wird gedrückt) kannst du in der methode actionPerformed() darauf reagieren.

..soweit erstmal *g*
 

swerflash

Aktives Mitglied
Ok danke dir :)


Jetzt muss ich jemanden finden der gut Fachenglish kann, paar Freiwillige hier? *guckt sich um* :roll:
 

Oni

Top Contributor
bei den meisten wörten wo ich nicht weiter komme gucke ich dann bei www.leo.org und reime mir den rest zusammen.

swerflash hat gesagt.:
Diese Methode gehört zu ActionListener oder? Wenn ich API richtig verstehe, dann ist das auch die einzige, muss ich wissen was diese Methode macht? Wenn ja dann bitte erklären :bae:

in der API steht
Invoked when an action occurs
und was heißt das auf Deutsch?

Invoked when an action occurs = heißt soviel wie:"wird aufgerufen wenn ein ereignis eintritt"
 

The_S

Top Contributor
Oni hat gesagt.:
Zu 1. ja, 10 ist die sichbare länge des textfeld (zeichen kannst du mehr reinschreiben)

Wenn du nix am Font rumbastelst siehst du mehr als 10 Zeichen!

[edit] zu 4.

Das ist das selbe wie public static void main(String[] args) { in ner normalen Applikation. Bei nem Applet heißt das halt nur public void init() {



[edit 2] zu 5.

Ein Container ist nichts anderes als ein "Behälter" in dem du Componenten ablegen kannst. getContentPane liefert dir das aktuell zugewiesene Pane zurück.
 

swerflash

Aktives Mitglied
Danke nochmal :lol:


Zusammenreimen könnte ich, wenn ich mehr Erfahrung mit Java hätte, habe leider noch nicht, aber kommt noch(hoffentlich).
 

Oni

Top Contributor
ich sag ja nicht, das es nicht so ist... ich habe da keine einheit hingeschrieben.
 

swerflash

Aktives Mitglied
Hobbit_Im_Blutrausch hat gesagt.:
zu 4.

Das ist das selbe wie public static void main(String[] args) { in ner normalen Applikation. Bei nem Applet heißt das halt nur public void init() {


Aha, danke dir. Habe init oft gesehen, aber wusste nicht was das zu bedeuten hat

aber wenn das wie main(String[] args) ist, warum braucht man dann hier noch

Code:
   public static void main(String[] args) 
   { 
      run(new klick_mich_2_mit_info(), 200, 100); 
   }
 

The_S

Top Contributor
Oni hat gesagt.:
Zu 1. ja, 10 ist die sichbare länge des textfeld (zeichen kannst du mehr reinschreiben)

Hast du das nicht so geimeint, dass man zwar viele Zahlen reinschreiben kann, man aber immer nur maximal 10 sieht? So hatte ich das nämlich verstanden. Man sieht aber Standardmäßig einige mehr ;).

btw: @ swerflash meine BEIDEN edits beachten falls sie im Eifer des Gefächts untergegangen seni sollten ;)

[edit]
Code:
    public static void main(String[] args) 
   { 
      run(new klick_mich_2_mit_info(), 200, 100); 
   }

brauchst du nicht, diese Methode wird NIE aufgerufen (es sei denn du rufst sie manuell irgendwann nochmal auf ;)). Der Browser ruft NUR die public void init() auf. von der aus wird dann alles "gesteuert".
 

swerflash

Aktives Mitglied
Ok habe Edits beachten, wenn aber init = main ist, dann habe ich so zu sagen 2 Mainmethoden in der Klasse, welche startet er dann, und brauche ich 2 , reicht 1 nicht aus?

EDIT(Diese Frage hat sich dann erledigt, da du noch ein Edit hinzufügt hast :wink: )


Zu Container, warum werden dort Componente gelagert? Was bringt mir das, wenn ich dort Componente ablege. Was ist ein Component, eine Methode einer Klasse?
 

Oni

Top Contributor
Hobbit_Im_Blutrausch hat gesagt.:
Oni hat gesagt.:
Zu 1. ja, 10 ist die sichbare länge des textfeld (zeichen kannst du mehr reinschreiben)

Hast du das nicht so geimeint, dass man zwar viele Zahlen reinschreiben kann, man aber immer nur maximal 10 sieht? So hatte ich das nämlich verstanden. Man sieht aber Standardmäßig einige mehr ;).

btw: @ swerflash meine BEIDEN edits beachten falls sie im Eifer des Gefächts untergegangen seni sollten ;)

das hängt vom buchstaben ab. mach mal ein textfeld mit der länge 15 und probiermla wieviele 'W' du reinschreiben kannst :wink:
 

The_S

Top Contributor
Ja, aber du wirst kaum ein Textfeld nur mit W's füllen. Schreib du ma i's rein ;).

@swerflash nochmal edit von meinem 2. post beachten

zu Container: Irgendwo musst du ja deine ganzen Buttons, Textfelder, Labels, ... ablegen. Und das macht man in einem Container oder einer von Container abgeleiteten Componente wie z. B. JPanel. In diesem Container wird dann auch gleich noch der LayoutManager festgelegt der deine Elemente schön so wie du es (mehr oder weniger :p) willst anordnet. Dieser Container wird dann letztendlich als deine Benutzeroberfläche angezeigt. eine Componente ist eine Klasse die z. B. von JComponent erbt z. B. JButton
 

The_S

Top Contributor
Ein Applet startest du ja auch nicht sondern bettest es in eine HTML-Seite ein :roll:

[edit] Woher hast du eigentlich den Code? Aus nem Buch? Falls ja würd ich gerne wissen welches Buch "ausführbare" Applets programmieren lässt
 

André Uhres

Top Contributor
Nützlicher Hinweis: In der "Google-Toolbar" deines Browsers (Download gratis bei Google)
gibts unter "Optionen" die Möglichkeit "Wort-Übersetzung" zu aktivieren.
Wenn du dann den Mauszeiger über einem Wort stehen lässt, wird die Übersetzung als
"Tooltip" angezeigt :D
 

swerflash

Aktives Mitglied
hmm habe nie gemacht ^^ habe einfach bei Eclipse den gesammten Code reingeschrieben und auf starten gedrückt :)

Dann versuche ich jetzt das in einer HTML Datei zu starten


Schüler swerflash bedankt sich bei seinen 2 Lehrern Hobbit_Im_Blutrausch und Oni für ihre Hilfe :bae:

So dann teste ich ob es geklappt hat :wink:
 

swerflash

Aktives Mitglied
Andre_Uhres hat gesagt.:
Nützlicher Hinweis: In der "Google-Toolbar" deines Browsers (Download gratis bei Google)
gibts unter "Optionen" die Möglichkeit "Wort-Übersetzung" zu aktivieren.
Wenn du dann den Mauszeiger über einem Wort stehen lässt, wird die Übersetzung als
"Tooltip" angezeigt :D

Aha :!: , hmm ich habe das sowieso mit google übersetzt und nichts verstanden :oops: . Aber das liegt auch daran, dass ich viel zu wenig Ahnung von Java habe.
 

Oni

Top Contributor
hoffentlich sind beispiele nicht alle von der qualität :bloed:

die machen es für einen anfänger nicht leichter
 

swerflash

Aktives Mitglied
Wie erwartet hat bei mir nicht geklappt, der findet diese Klasse nicht beim laden

Habe eine start.html Datei in dem Ordler erstellt wo sich diese Java Datei befindet. In der HTML datei steht folgendes:

Code:
<html>
 <head>
 </head>
 <body>
  <applet code=klick_mich_2_mit_info width=500 height=300></applet>
 </body>
 </head>
 </html>

Die Java und HTML Datei befinden sich hier C:\java_test\uebung_java\src\swings_project\







@Oni, ja leider sind dort alle Beispiele sehr schwer, ohne Erklärung, aber das ich das beste was ich gefunden habe, weil man dort zu jedem Thema sehr viele unterschiedliche Beispiele findet.
 

swerflash

Aktives Mitglied
Geht trotzdem nicht, aber ich glaube .class muss man nicht schreiben, er hat mir diesen Fehler ausgegeben

Code:
java.io.FileNotFoundException: C:\java_test\uebung_java\src\swings_project\klick_mich_2_mit_info\class.class (Das System kann den angegebenen Pfad nicht finden)
hier ist ein class zu viel am Ende



Und wenn ich ohne .class am Ende schreibe, dann kriege ich das:

Code:
java.io.FileNotFoundException: C:\java_test\uebung_java\src\swings_project\klick_mich_2_mit_info.class (Das System kann die angegebene Datei nicht finden)

Und hier stimmt eigentlich alles, komisch hmm.
 

The_S

Top Contributor
Sourcecode der Startseite meiner Homepage (nein nicht die Weiterleitungsseite):

Code:
<html> 
<body bgcolor="#760404" lang=DE style='tab-interval:35.4pt'> 
<table width=100%> 
<tr><td>
[url="http://www.ranking-hits.de/"][img]http://www.ranking-hits.de/?ref=www.stefan-kiesel.gmxhome.de&style=17[/img][/url]
</td> 
<td align=center> 
<applet code="Titel.class" width="400" height="100" align="ABSMIDDLE"> 
</applet> 

 
</td><tr> 
<td align=left valign=top> 

 


<applet code="WebMenu.class" width="120" height="350"> 
</applet> 
</td><td align=center> 
<applet code="Fenster.class" width="750" height="750"> 
</applet> 
</td></tr> 
</table> 
</html>

und da steht ja auch überall .class hinten dran und es rennt (merkst was ;)).

Dann haste was anderes verpfuscht. Poste bitte mal den genauen Pfad der HTML-Datei und deiner *.class Datei. Außerdem noch den Code deiner HTML-Datei (mit dem .class hintendran ;)) und den Code deiner *.class.
 

swerflash

Aktives Mitglied
C:\java_test\uebung_java\bin\swings_project
klick_mich_2_mit_info.class

C:\java_test\uebung_java\src\swings_project
klick_mich_2_mit_info.java

C:\java_test\uebung_java\bin\swings_project
start.html

C:\java_test\uebung_java\src\swings_project
start.html


als ich diese start.html im C:\java_test\uebung_java\src\swings_project erstellt habe, hat er automatisch sie auch in diesem Ordner C:\java_test\uebung_java\bin\swings_project erstellt



in der start.html datei steht folgendes:


Code:
 <html>
 <head>
 </head>
 <body>
  <applet code=klick_mich_2_mit_info.class width=500 height=300></applet>
 </body>
 </head>
 </html>


Fehler:
Code:
Laden: Klasse klick_mich_2_mit_info.class nicht gefunden
java.lang.ClassNotFoundException: klick_mich_2_mit_info.class
	at sun.applet.AppletClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.applet.AppletClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.applet.AppletClassLoader.loadCode(Unknown Source)
	at sun.applet.AppletPanel.createApplet(Unknown Source)
	at sun.plugin.AppletViewer.createApplet(Unknown Source)
	at sun.applet.AppletPanel.runLoader(Unknown Source)
	at sun.applet.AppletPanel.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.io.FileNotFoundException: C:\java_test\uebung_java\src\swings_project\klick_mich_2_mit_info\class.class (Das System kann den angegebenen Pfad nicht finden)
	at java.io.FileInputStream.open(Native Method)
	at java.io.FileInputStream.<init>(Unknown Source)
	at java.io.FileInputStream.<init>(Unknown Source)
	at sun.net.www.protocol.file.FileURLConnection.connect(Unknown Source)
	at sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)
	at sun.applet.AppletClassLoader.getBytes(Unknown Source)
	at sun.applet.AppletClassLoader.access$100(Unknown Source)
	at sun.applet.AppletClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	... 10 more



liegt bestimmt an Eclipse hmmm

EDIT: hier stimmt was nicht

Code:
C:\java_test\uebung_java\src\swings_project\klick_mich_2_mit_info\class.class (Das System kann den angegebenen Pfad nicht finden)
der hat aus meiner Datei klick_mich_2_mit_info einen Ordner gemacht :), aber das passiert nur, wenn ich in der HTML Datei am Ende noch .class reinschreibe, dann gibt er mir diese Fehlermeldung aus, sonst stimmt der Pfad, aber kann die Datei nicht finden.
 

Oni

Top Contributor
dann kopier doch einfach mal die *.class datei und die html-datein in einen neu angelegten ordner und test dann mal was passiert wenn du die html-seite öffnest
 

swerflash

Aktives Mitglied
Habe gemacht, kriege das als Fehlermeldung
auf dem Laufwerk C habe ich Ordner test erstellt und die beiden Datein da rein kopiert.

Code:
Laden: Klasse klick_mich_2_mit_info.class nicht gefunden
java.lang.ClassNotFoundException: klick_mich_2_mit_info.class
	at sun.applet.AppletClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.applet.AppletClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.applet.AppletClassLoader.loadCode(Unknown Source)
	at sun.applet.AppletPanel.createApplet(Unknown Source)
	at sun.plugin.AppletViewer.createApplet(Unknown Source)
	at sun.applet.AppletPanel.runLoader(Unknown Source)
	at sun.applet.AppletPanel.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.io.FileNotFoundException: C:\java_test\uebung_java\src\swings_project\klick_mich_2_mit_info\class.class (Das System kann den angegebenen Pfad nicht finden)
	at java.io.FileInputStream.open(Native Method)
	at java.io.FileInputStream.<init>(Unknown Source)
	at java.io.FileInputStream.<init>(Unknown Source)
	at sun.net.www.protocol.file.FileURLConnection.connect(Unknown Source)
	at sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)
	at sun.applet.AppletClassLoader.getBytes(Unknown Source)
	at sun.applet.AppletClassLoader.access$100(Unknown Source)
	at sun.applet.AppletClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	... 10 more
java.lang.NoClassDefFoundError: klick_mich_2_mit_info (wrong name: swings_project/klick_mich_2_mit_info)
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)
	at sun.applet.AppletClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.applet.AppletClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.applet.AppletClassLoader.loadCode(Unknown Source)
	at sun.applet.AppletPanel.createApplet(Unknown Source)
	at sun.plugin.AppletViewer.createApplet(Unknown Source)
	at sun.applet.AppletPanel.runLoader(Unknown Source)
	at sun.applet.AppletPanel.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)





Was ist mit meiner *.java datei? Brauche ich sie nicht, oder weiss er selber wo er sie suchen soll, weil in der *class Datei Package steht.
 

swerflash

Aktives Mitglied
Naja egal, solange ich das über Eclipse starten kann, ist das nicht wichtig, ich weiss auch nicht warum das nicht geht.
 

Oni

Top Contributor
also du hast jetzt den ordner test erstellt:


C:\test

in dem ordner test liegen jetzt die datei:

irgendEinName.html
und
klick_mich_2_mit_info.class

der inhalt der html datei müsste so aussehen:

Code:
<html>
<head>
</head>
<body>
  <applet code=klick_mich_2_mit_info.class width=500 height=300></applet>
</body>
</head>
</html>


ich gehe mal davon aus die datei klick_mich_2_mit_info.class ist inhaltlich korrekt und ließ sich auch kompilieren.

dann müsste ein doppelklick auf die html-seite reichen um die seite mit dem applet zu starten.


wo bekommst du die fehlermeldung angezeigt? hast du alles so wie oben beschrieben?
Code:
Laden: Klasse klick_mich_2_mit_info.class nicht gefunden
java.lang.ClassNotFoundException: klick_mich_2_mit_info.class
   at sun.applet.AppletClassLoader.findClass(Unknown Source)
   at java.lang.ClassLoader.loadClass(Unknown Source)
   at sun.applet.AppletClassLoader.loadClass(Unknown Source)
   at java.lang.ClassLoader.loadClass(Unknown Source)
   at sun.applet.AppletClassLoader.loadCode(Unknown Source)
   at sun.applet.AppletPanel.createApplet(Unknown Source)
   at sun.plugin.AppletViewer.createApplet(Unknown Source)
   at sun.applet.AppletPanel.runLoader(Unknown Source)
   at sun.applet.AppletPanel.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Caused by: java.io.FileNotFoundException: C:\java_test\uebung_java\src\swings_project\klick_mich_2_mit_info\class.class (Das System kann den angegebenen Pfad nicht finden)
   at java.io.FileInputStream.open(Native Method)
   at java.io.FileInputStream.<init>(Unknown Source)
   at java.io.FileInputStream.<init>(Unknown Source)
   at sun.net.www.protocol.file.FileURLConnection.connect(Unknown Source)
   at sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)
   at sun.applet.AppletClassLoader.getBytes(Unknown Source)
   at sun.applet.AppletClassLoader.access$100(Unknown Source)
   at sun.applet.AppletClassLoader$1.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   ... 10 more
java.lang.NoClassDefFoundError: klick_mich_2_mit_info (wrong name: swings_project/klick_mich_2_mit_info)
   at java.lang.ClassLoader.defineClass1(Native Method)
   at java.lang.ClassLoader.defineClass(Unknown Source)
   at java.security.SecureClassLoader.defineClass(Unknown Source)
   at sun.applet.AppletClassLoader.findClass(Unknown Source)
   at java.lang.ClassLoader.loadClass(Unknown Source)
   at sun.applet.AppletClassLoader.loadClass(Unknown Source)
   at java.lang.ClassLoader.loadClass(Unknown Source)
   at sun.applet.AppletClassLoader.loadCode(Unknown Source)
   at sun.applet.AppletPanel.createApplet(Unknown Source)
   at sun.plugin.AppletViewer.createApplet(Unknown Source)
   at sun.applet.AppletPanel.runLoader(Unknown Source)
   at sun.applet.AppletPanel.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
 

swerflash

Aktives Mitglied
Ja habe alles so gemacht wie beschrieben. Wenn ich HTML Datei starte(Doppelklick mit der Maus), dann öffnet sich eine HTML Seite. In der Ecke ist ein leeres weißes Bild zu sehen mit einem roten Kreuz. Wenn ich rechtsklick auf das Bild mache, dann habe ich dort eine Funktion "Java - Console", wenn ich das auswähle, dann steht dort meine Fehlermeldung.

Aber wie gesagt, solange ich das auch über Eclipse starten kann(*.java Datei, ohne HTML), ist das nicht schlimm. Irgendwo ist bestimmt etwas falsch eingestellt.
 

lin

Top Contributor
hmm, das Problem hatte ich auch mal, fand aber den Fehler auch nicht. Mittlerweile gehts, hab allerdings keine Ahnung warum... :?
 

The_S

Top Contributor
Warum müssen Anfänger auch immer Eclipse verwenden? Lernt doch erstmal den Umgang mit der Sprache anstatt den einer großen IDE!

Hab das Ding jetzt im JCreator (simple und schlanke IDE) kompiliert:

Code:
import java.awt.Container; 
import java.awt.FlowLayout; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 

import javax.swing.JApplet; 
import javax.swing.JButton; 
import javax.swing.JFrame; 
import javax.swing.JTextField; 

public class klick_mich_2_mit_info extends JApplet 
{ 
   private JButton b1 = new JButton("Button 1"), b2 = new JButton("Button 2"); 

   private JTextField txt = new JTextField(10); 

   class ButtonListener implements ActionListener 
   { 
      public void actionPerformed(ActionEvent e) 
      { 
         String name = ((JButton) e.getSource()).getText(); 
         txt.setText(name); 
      } 
   } 

   private ButtonListener bl = new ButtonListener(); 

   public void init() 
   { 
      b1.addActionListener(bl); 
      b2.addActionListener(bl); 
      Container cp = getContentPane(); 
      cp.setLayout(new FlowLayout()); 
      cp.add(b1); 
      cp.add(b2); 
      cp.add(txt); 
   } 

   public static void run(JApplet applet, int width, int height) 
   { 
      JFrame frame = new JFrame(); 
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
      frame.getContentPane().add(applet); 
      frame.setSize(width, height); 
      applet.init(); 
      applet.start(); 
      frame.setVisible(true); 
   } 
}

Den ganzen Code unter C:\ inkl. class-Datei (wobei die .java ruhig woanders liegen kann) gespeichert. Auf C:\ dieses html-File erstellt

Code:
<applet code="klick_mich_2_mit_info.class" height="300" width="500">
</applet>

und mit dem "bösen E" ausgeführt. Klappt wunderbar.

@ swerflash

Deine Enduser später kopieren deinen Sourcecode auch nicht in Eclipse und sind zufrieden wenn es wenigstens dort läuft. Außerdem würde ich gerade dir als Anfänger nahelegen ersteinmal mit einem Texteditor zu programmieren und manuell compilieren und ausführen (ok, muss zugeben dass ich das auch nie gemacht habe) oder dir zumindest eine einfache IDE zulegst. Du sollst Java als Programmiersprache lernen und nicht wie man Eclipse bedient (noch nicht).
 

lin

Top Contributor
naja, also dazu sag ich, dass der Einstieg in eclipse nicht sonderlich kompliziert ist, auch für ein Anfänger net. Ich persönlich habe vor java noch bisserl Turbo Pascal gelernt und Delphi, so in den 90er jahren war das mal... Bin dann über den JBuilder in Java eingestiegen und benutze nun Eclipse und emacs(editor). Und wenn du dir die Tutorials durckguckst und alles sollte das auch für nen Anfänger klappen mit eclipse.
Entwickle persönl. keine Applets, hab erst etwa 10 kleinere Dinge geschrieben allerdings mit emacs.
 

The_S

Top Contributor
Jo, nur du hattest vorher Programmiererfahrung. swerflash geht es wie mir ca. vor nem guten Jahr. Ausbildung angefangen, noch rein gar nichts programmiert, ziemlich hohe Erwartungen gesetzt die aber nicht erfüllt wurden. Nichts gegen Eclipse, ist ne 1A IDE (wenn nicht so gar ein bisschen mehr ;)), aber für den Einstieg (vorallem wenn man vorher nichts in diese Richtung gemacht hat) einfach viel zu komplex (komplex nicht kompliziert). Als Anfänger fühlst du dich mit den ganzen Einstellungen und Fachbegriffen leicht überfordert und kannst nicht richtig mit der IDE umgehen und sie konfigurieren wie man hier sieht (@ swerflash is net böse gemeint, jeder hat mal klein angefangen ;)). Auch erleichtert sie dir manches (z. B. die imports), wenn du mal darauf angewiesen bist ohne zu programmieren und das nie richtig gelernt hast schauste da alt aus der Wäsche ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
thor_norsk Allgemeine Fragen AWT, Swing, JavaFX & SWT 6
thor_norsk Allgemeine Fragen AWT, Swing, JavaFX & SWT 4
U Zwei Fragen zu eienr Swing Aufgabe AWT, Swing, JavaFX & SWT 2
K JavaFX Allgemeine Fragen zu dem Aufbau eines Programms hinsichtlich der Klassen AWT, Swing, JavaFX & SWT 1
D Fragen zur GUI AWT, Swing, JavaFX & SWT 4
M NetBeans JFrame Grundlangen fragen AWT, Swing, JavaFX & SWT 6
T JavaFX Allgemeine Fragen zu JavaFX (uA zu Properties) AWT, Swing, JavaFX & SWT 6
D Panel wird nicht angezeigt und Fragen zum CardLayout AWT, Swing, JavaFX & SWT 6
K Fragen zu JavaFx Canvas AWT, Swing, JavaFX & SWT 0
N Swing Fragen zu non-modal JDialog AWT, Swing, JavaFX & SWT 1
Q Fragen zur JMenuBar & Co. AWT, Swing, JavaFX & SWT 3
F DefaultTreeCellEditor - Fragen zur Groesse und zum Icon beim Editieren AWT, Swing, JavaFX & SWT 4
Kenan89 JMenu Fragen AWT, Swing, JavaFX & SWT 5
Luk10 (LWJGL) Fragen zu VBOs AWT, Swing, JavaFX & SWT 21
M Swing JTextPane + Scrollbar = Fragen AWT, Swing, JavaFX & SWT 15
S Fragen zu JList AWT, Swing, JavaFX & SWT 3
J Das erste Projekt und ein Haufen von Fragen. Der SudokuReader. AWT, Swing, JavaFX & SWT 4
Luk10 Fragen zum Laden von Fonts AWT, Swing, JavaFX & SWT 4
Luk10 Fragen zum Koordinaten System AWT, Swing, JavaFX & SWT 3
M JTable Grundlegende Fragen AWT, Swing, JavaFX & SWT 4
B Prozentrechner GUI Fragen AWT, Swing, JavaFX & SWT 4
H Fragen zu JPanel und JButton AWT, Swing, JavaFX & SWT 3
Q Swing Zeichenprogramm, grundlegende Fragen AWT, Swing, JavaFX & SWT 8
U Swing Fragen bezüglich Multithreaded GUIs (Grundlagen): AWT, Swing, JavaFX & SWT 3
R LayoutManager GridBagLayout Fragen AWT, Swing, JavaFX & SWT 10
A diverse Layout-Fragen AWT, Swing, JavaFX & SWT 4
M LayoutManager Einige Fragen zum GridBagLayout AWT, Swing, JavaFX & SWT 13
H Swing Zwei Fragen AWT, Swing, JavaFX & SWT 5
S 2D-Grafik Diverse Fragen zu Imagemanipulation in Java AWT, Swing, JavaFX & SWT 11
C Swing Grundsätzliche Fragen zu MVC AWT, Swing, JavaFX & SWT 8
F 3 Fragen zu Applets AWT, Swing, JavaFX & SWT 4
L Klick auf JTable -> EditorPane manipulieren, Fragen zu TableModel AWT, Swing, JavaFX & SWT 9
S Fragen zu GridBagLayout AWT, Swing, JavaFX & SWT 6
B Zeichnen in Swing - Jede Menge Fragen! AWT, Swing, JavaFX & SWT 2
D Fragen zu Swing, paintComponent() und repaint AWT, Swing, JavaFX & SWT 6
D GridBagLayout und JEditorPane (mehrere fragen) AWT, Swing, JavaFX & SWT 2
A Swing einfache fragen zu frame AWT, Swing, JavaFX & SWT 10
P Mehrere Fragen AWT, Swing, JavaFX & SWT 4
A Fragen zu Microber AWT, Swing, JavaFX & SWT 4
C Mehrer Fragen zu großem kompletten Swing Beispiel AWT, Swing, JavaFX & SWT 5
T Fragen zu JList und DnD AWT, Swing, JavaFX & SWT 13
I Einige Fragen zu JList AWT, Swing, JavaFX & SWT 6
I Drei Fragen/Probleme mit einer JTable AWT, Swing, JavaFX & SWT 9
G Fragen zum FileChooser AWT, Swing, JavaFX & SWT 5
M 2 Kleine Fragen zum JOptionFrame AWT, Swing, JavaFX & SWT 5
G performance fragen zu AWT, Swing AWT, Swing, JavaFX & SWT 14
J Fragen zu JTable und JScrollpane AWT, Swing, JavaFX & SWT 2
R Frage zu Listfeld oder jTable, auch andere Fragen AWT, Swing, JavaFX & SWT 5
C Fragen zur Darstellung einer JTable mittels Renderer AWT, Swing, JavaFX & SWT 2
ModellbahnerTT Fragen zu AWT AWT, Swing, JavaFX & SWT 3
S Fragen Databinding? AWT, Swing, JavaFX & SWT 3
J Fragen zu AWT Komponenten AWT, Swing, JavaFX & SWT 5
U 2 Fragen zu BufferedImages AWT, Swing, JavaFX & SWT 19
J Fragen zur Vererbung und Update AWT, Swing, JavaFX & SWT 12
J Fragen zum SyntaxHighlighting (DefaultStyledDocument) AWT, Swing, JavaFX & SWT 2
I Ein paar SWT Fragen AWT, Swing, JavaFX & SWT 10
P Zwei Fragen zu Bildern in Applets AWT, Swing, JavaFX & SWT 2
isowiz Einige Fragen zur ersten eigenen Sing-Applikation AWT, Swing, JavaFX & SWT 4
G 2 Fragen JDesktopPane AWT, Swing, JavaFX & SWT 4
G Fragen zum Ocean Look and Feel AWT, Swing, JavaFX & SWT 3
G Neue Komponente erstellen - Fragen/Probleme mit MouseEvents AWT, Swing, JavaFX & SWT 2
Y 2 Fragen- JList Inhalt ändern und Fenster invisible setzen AWT, Swing, JavaFX & SWT 5
C Gemischte Fragen AWT, Swing, JavaFX & SWT 10
G Fragen zu JList AWT, Swing, JavaFX & SWT 12
K 2 fragen:JCheckBoxMenuItem und ComboBox AWT, Swing, JavaFX & SWT 2
T Mehrere Fragen zu JToolBar AWT, Swing, JavaFX & SWT 2
N 2 Fragen (zu binärem Suchen und Scrollbar) AWT, Swing, JavaFX & SWT 6
B Einige Fragen zum GUI AWT, Swing, JavaFX & SWT 3
M Seltsame Exception bei setVisible(true) Methode in einem JFrame AWT, Swing, JavaFX & SWT 2
MartinNeuerlich Kann mir jemand, der einen Mac mit einem m1 oder m2-Chip hat, eine POM geben mit der Javafx-Fullscreen beim Mac mit m-Chip funktioniert? AWT, Swing, JavaFX & SWT 1
W 2 JTables in einem Swing-Fenster? AWT, Swing, JavaFX & SWT 5
J JavaFx PDF in einem Element in einem Fenster anzeigen. AWT, Swing, JavaFX & SWT 11
Mojo7310 Ändern von Text in JLabel mit einem Button AWT, Swing, JavaFX & SWT 11
I JTable mit einem Button zu einer Detail Seite springen AWT, Swing, JavaFX & SWT 4
S Swing zu einem Datum Tage addieren/subtrahieren AWT, Swing, JavaFX & SWT 6
E Swing Mausposition auf einem JFrame erkennen AWT, Swing, JavaFX & SWT 5
Jose05 NullPointerException bei Beschreiben eines Labels aus einem Array AWT, Swing, JavaFX & SWT 12
ExceptionOfExpectation Textdarstellung auf einem Canvas mit Hilfe von repaint(); AWT, Swing, JavaFX & SWT 6
2 JavaFX die ChoiceBox leitet den String nicht weiter oder es komm zu einem NullPointer AWT, Swing, JavaFX & SWT 8
L JavaFX javafx.fxml.LoadException bei einem Taschenrechner AWT, Swing, JavaFX & SWT 5
Z GUI Forms - Mehrere Fenster in einem Projekt AWT, Swing, JavaFX & SWT 18
N Nur bei einem Textfiled Nullpointerexception bei getText() AWT, Swing, JavaFX & SWT 1
H JComobox in einem JPopupNeu AWT, Swing, JavaFX & SWT 7
P Button simpler random auf einem JPanel verteilen? AWT, Swing, JavaFX & SWT 3
W Inject bei einem Swing Frontend AWT, Swing, JavaFX & SWT 8
H Daten aus einer XML(x83-Datei) in einem JFrame anzeigen lassen AWT, Swing, JavaFX & SWT 9
Z Swing Drag and Drop mit einem JButton AWT, Swing, JavaFX & SWT 1
Z Mit einem Button einen anderen Button Triggern AWT, Swing, JavaFX & SWT 3
D AWT Wie kann ich ein Frame von einem anderen aus beeinflussen? AWT, Swing, JavaFX & SWT 7
T Setzen von der Schriftgröße bei einem Shell AWT, Swing, JavaFX & SWT 15
A checkbox in einer TableView abhängig von einem anderen Celleninhalt disablen AWT, Swing, JavaFX & SWT 1
J Fenster mit Inhalten aus einem Array Füllen AWT, Swing, JavaFX & SWT 4
D JavaFX Ein Parameter von einem Stage(GUI) zu einem anderen übergeben AWT, Swing, JavaFX & SWT 6
T Bilder bei einem JFrame einfügen AWT, Swing, JavaFX & SWT 4
S JavaFX Variablen in einem FXML File verwenden AWT, Swing, JavaFX & SWT 8
A Objekt von einem Window erstellen? AWT, Swing, JavaFX & SWT 8
Drachenbauer Swing Wie ändere ich die helle geklickt-Farbe von einem JButton? AWT, Swing, JavaFX & SWT 4
ralfb1105 JavaFX Alert Confirmation Dialog aus einem Service Thread AWT, Swing, JavaFX & SWT 8
F JavaFX Aktuelle Zeit in einem TextField anzeigen AWT, Swing, JavaFX & SWT 7
M JavaFX Bild zur ImageView in einem Kreis anzeigen. AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben