# JButton



## Morpheus__ (12. Jan 2007)

Hallo ich habe ein kleines Problem ich habe in meinem Swing einen JButton erstellt und möchte nun das ein Internetfenster mit der jeweiligen Internetadresse aufgeht wenn ich auf den Button klicke... ich habe schon Stunden lang gesucht was ich da nehmen könnte nur ich finde keine Lösung wäre nett wenn ihr mir weiterhelfen könntet.



Das ist der Code den ich schon geschrieben hab:



```
// Created on 08.01.2005


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

public class SWING_JButton extends JFrame {

	private JButton button1, button2;
	

	SWING_JButton() {
		super();

		this.setTitle("Herzlich Willkommen zu Swing");

		this.getContentPane().setLayout(null);

		button1 = new JButton("Klick mich!");
		button1.setSize(130, 40);
		button1.setLocation(10, 10);
		button1.setIcon(new ImageIcon("ok.gif"));
		button1.setMnemonic(KeyEvent.VK_K);

		button2 = new JButton("oder mich");
		button2.setSize(130, 40);
		button2.setLocation(150, 10);
		button2.setIcon(new ImageIcon("cancel.gif"));
		button2.setMnemonic(KeyEvent.VK_O);

		//
		this.getContentPane().add(button1);
		this.getContentPane().add(button2);

		// Default-Knopf
		this.getRootPane().setDefaultButton(button2);

		// Events
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

		button1.addActionListener(new KnopfAktionen());
		button2.addActionListener(new KnopfAktionen());
		button1.getLocation( );

		

	}

	class KnopfAktionen implements ActionListener {
		public void actionPerformed(ActionEvent e) {
			if (e.getActionCommand() == button1.getText()) {

				
				button1.setText("Hallo");
			}
			if (e.getActionCommand() == button2.getText()) {
				button2.setText("Danke!");
			}

		}

	}

	
	
	
	public static void main(String[] args) {

		SWING_JButton fenster = new SWING_JButton();
		fenster.setSize(300, 100);
		fenster.setLocation(200, 100);
		fenster.setVisible(true);

	}
}
```

_[Edit by Beni: Codetags]_


----------



## Wildcard (12. Jan 2007)

Seit Java 6 gibt es die Desktop Klasse die das kann.


----------



## Gast (12. Jan 2007)

des hab ich jetz in Eclipse geschrieben


----------



## Wildcard (12. Jan 2007)

Und ich im Firefox... wtf?  :bahnhof:


----------



## Morpheus_ (12. Jan 2007)

kennst du eclipse? da hab ichs geschrieben und ausgeführt aber des problem is halt das ich nich weiss was ich eingeben muss das wenn ich auf den butten klick das sich dann ne i-netseite öffnet


----------



## Wildcard (12. Jan 2007)

Ich benutze Eclipse, aber das hat mal gar nichts mit dem Thema zu tun.
Du brauchst wie gesagt die Klasse "Desktop" aus Java 6  :shock:


----------



## Morpheus_ (12. Jan 2007)

und mit Java 5 gehts überhaupt nich? Hm schade.... hm ^^ jaaa öhmm und wie mach ich des jetz am besten? Hab Java erst vor n paar Wochen mit Java angefangen ^^


----------



## Beni (12. Jan 2007)

Wildcard hat gesagt.:
			
		

> Seit Java 6 gibt es die Desktop Klasse die das kann.


-> Suche nach "Desktop Klasse Java 6"
-> Google
-> Erstes Resultat

-> Und in der API findet man die Klasse natürlich auch :wink:

[Edit: am besten installierst du Java 1.6 :bae: ]


----------



## Morpheus_ (12. Jan 2007)

mal sehn ob ich des hinkrieg ^^ :applaus:


----------



## Wildcard (12. Jan 2007)

Morpheus_ hat gesagt.:
			
		

> und mit Java 5 gehts überhaupt nich? Hm schade.... hm ^^ jaaa öhmm und wie mach ich des jetz am besten? Hab Java erst vor n paar Wochen mit Java angefangen ^^


Mit Java 5 geht das entweder plattformabhängig (zB mit Windoof einfach über die Runtime die URL eingeben) oder mit der Bibliothek JDic.


----------



## Morpheus_ (12. Jan 2007)

Ok ^^ ich hab keine ahnung wie ich des jetz anstellen soll das das jetz geht.... mit Eclipse kann ich des jetz also nich mehr schreiben oder?


----------



## Wildcard (12. Jan 2007)

DAS HAT NICHT DAS GERINGSTE DAMIT ZU TUN  :roll:


----------



## Morpheus_ (12. Jan 2007)

ich hab aber des ganze Programm bis jetz in Eclipse geschrieben ^^ wieso sollte das nichts damit zu tun haben ich muss doch da ihrgendwas eingeben das des funktioniert. und ich muss die klasse ja importieren usw. oder soll ichs in nen normalen text editor reinhaun oder was


----------



## Wildcard (12. Jan 2007)

Weil völlig egal ist welches Werkzeug du zum erstellen des Quelltexts verwendest. Warum sollte das für dein Problem relevant sein. Es wurden jetzt mehr als ausreichend funktionierende Lösungen genannt. Was fehlt dir denn noch?


----------



## Morpheus_ (12. Jan 2007)

wenn ich des in eclipse schreiben will kommt mir die fehlermeldung das er die klasse nicht importieren kann


----------



## Beni (12. Jan 2007)

Ja hast du Java 1.6 denn jetzt installiert und Eclipse das auch mitgeteilt?

Eclipse: "Window > Preferences > Java > Installed JREs"


----------



## Morpheus_ (12. Jan 2007)

jo is installiert. wie sag ich des dem eclipse...


----------



## Wildcard (12. Jan 2007)

Window -> Preferences -> Java ->Compiler -> Compiler Compliance Level -> 6.0


----------



## Morpheus_ (12. Jan 2007)

jo alles gemacht.... ich kriegs nicht hin....


----------



## Wildcard (12. Jan 2007)

Und das Problem ist... welches?


----------



## Morpheus_ (12. Jan 2007)

ja immernoch wenn ichs importieren will kommt die fehlermeldung das ers nich findet... hmm kannst du mir mal schreiben was ich da in eclipse schreiben muss?


----------



## JAVAn00b (12. Jan 2007)

als erstes...

soll sich ein browser öffnen oder wilst du das in einem java fenster öffnen?

das zweite...
detailiertere auskünfte bitte

das dritte
IDE hat nichts mit einem Programm zu tun. du kannst java auch mit einem texteditor schreiben.


----------



## Morpheus_ (12. Jan 2007)

lso was ich jetz machen ist das ich n kleines java fenster hab wo buttons drauf sin und wenn ich jetz zum beispiel nen Button erstell mit Java-Forum und da draufklick dann soll sich ein Internetexplorerfenster öffnen mit der seite hier jetz zb.


----------



## Wildcard (12. Jan 2007)

Bitte (relevanter)Quellcode + orginal Fehlermeldung.
Sonst wird das ja nie was.


----------



## Morpheus_ (12. Jan 2007)

quellcode is ja schon auf seite 1 zu sehn. die button hab ich bereits erstellt nur ich hab keine ahnung wie ich des schreiben soll das da sich jetz n fenster öffnet


----------



## Wildcard (12. Jan 2007)

:autsch: 
Schritt für Schritt
-java.awt.Desktop importieren
-Desktop.getDesktop().browse(URI); eintippen


----------



## Morpheus_ (12. Jan 2007)

und wo soll ich des jetz am besten schreiben? ^^


----------



## JAVAn00b (12. Jan 2007)

es gibt eine runtime klasse...

die mußt du aufrufen damit du den IE starten kannst.


----------



## Wildcard (12. Jan 2007)

JAVAn00b hat gesagt.:
			
		

> es gibt eine runtime klasse...
> 
> die mußt du aufrufen damit du den IE starten kannst.


Das ist doch mist. Erstens wird dann nicht der Standardbrowser geöffnet und zweitens geht das nur auf Windoof.
@Morpheus:


> und wo soll ich des jetz am besten schreiben? ^^


Na an der Stelle an der du den Browser öffnen willst  :shock:  :autsch:


----------



## Morpheus_ (12. Jan 2007)

ich wills eh nur mit windoof ausführen also is des egal. an der stelle auf dem ich den brwoser öffnen will? also in nem texteditor oder was


----------



## Wildcard (12. Jan 2007)

Na wenn dein Button gedrückt wird  :shock: 
*verzweifel*  :autsch:


----------



## Morpheus_ (15. Jan 2007)

ok jetz peil ich gar nix mehr ^^ hej des kann doch bestimmt nich so schwer sein ^^


----------



## Morpheus__ (16. Jan 2007)

Hab jetz herausgefunden wie es funktioniert trotzdem an alle ein Danke für die Mühe




1)
// … if (e.getActionCommand() == „go Web“ {
//
// Runtime.getRuntime().exec(\"cmd /c \"start
// http://www.java.de\"\");
//
// }…
//
// Oder:
// 2)
//
// import java.awt.*;
// import java.awt.event.*;
// import javax.swing.*;
// import java.net.URL;
//
// public class IntViewer extends JFrame{
// public JEditorPane intEdit = new JEditorPane();
//
// public IntViewer (){
// super("Internet Verbindung");
// setSize(500,650);
// Container cp = getContentPane();
// String s = null;
// try{
// //s = "file:./test.html"; //Pfad der HTML-Datei
// s = "http://www.java.de/index.html";
// URL fileURL = new URL(s);
// intEdit.setPage(s);
// }
// catch(Exception e){
// e.printStackTrace();
// }
// // intEdit.setPage(s);
// intEdit.setEditable(false);
// cp.add(intEdit);
// setVisible(true);
// }
//
// public static void main(String args[]){
// IntViewer intView = new IntViewer ();


----------

