.nur noch einen hyperLINK einbauen

Status
Nicht offen für weitere Antworten.
C

chrizzz

Gast
Hallo,
ich versuchen ein kleines Applet zu erstellen, welches, wenn
Java installiert und aktiv ist, einen Text ausgibt (so weit bin ich schon)
und dieser Text soll zu einer weiteren Seite führen wen man diesen anklickt.
Also einen simplem textlink einbauen.


Code:
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;

public class test extends Applet{
 public void paint(Graphics g){
  setForeground(new Color (0,240,5));
  setBackground(new Color (238,238,238));
  g.drawString("GLIGST DU HIER!",1,15);
 }
}

So.... wie bekomme ich nun den Text zu einem einfachen LINK / Hyperlink?

Bitte mit Code da ich der absolute JAVA Profi :)
Vielen Dank!!!
 

dotlens

Top Contributor
es gibt auch ne klasse "BrowserLauncher" die das file dann mit dem Standardbrwoser öffnet. hab ich schon oft gebraucht ;)
 

Sky

Top Contributor
Hab' ich gerade auch gesehen. Die gibt's bei 'sourceforge'. Ich habe mir auch gleich mal den Quellcode angeschaut und stelle mir die Frage, warum man diese Klasse einbinden sollte!?

Über den AppletContext kann man genau so elegant ein neues Browser-Fenster öffnen.
 

dotlens

Top Contributor
kenne mich in applets nicht so gut aus, hab es für meine Tools gebraucht...
schau mir gleich mal den appletContext an ;)
 

Stefan1200

Top Contributor
sky80 hat gesagt.:
Hab' ich gerade auch gesehen. Die gibt's bei 'sourceforge'. Ich habe mir auch gleich mal den Quellcode angeschaut und stelle mir die Frage, warum man diese Klasse einbinden sollte!?

Naja, für Applets wohl auch kaum zu gebrauchen.
Für Java Applikationen vielleicht interessanter.

Btw. gibt es unter Linux auch sowas, wie unter Windows start oder unter MacOS X open?
 

chrizz

Mitglied
Hey Danke für die Browser Launcher Geschichten die sind in diesem Fall nicht relevant.
Das was ich brauche ist folgendes:

Ich habe eine Java Anwendung im Web.
Diese wird über ein Pop UP Fenster gestartet.
Wenn das Popup Fenster geöffnet wird erscheint dort eine
Hinweisseite (Hey man..brauchst du JAVA man.. nix JAVA nix glotzen ode rnix JAVA
du java installieren und glicken hier) mit dem Link zur eigentlichen Anwendung.

So nun möchte ich es so haben, dass auf der Hinweisseite einen JAVA Applet
einen Text ausgibt z.B.: "Java ist da, hier gehts weiter ...".
Dieser Text soll auch gleich ein HYPERLINK zur Folgeseite sein, in der dann die
eigentliche Geschichte losgeht (Im gleichen Fenster, im gleichen Frame (ist aber keines)
Ein stink normaler Hyperlink so wie er uns Tag täglich im Netz begegnet,ok.

Schafft Ihr das?
Bitte mit Quellcode da ich erst seit gestern Java probiere und noch nicht weiß wo links und rechts ist,ok.

Der Link zur Doku war gut, nur die Frage ist WIE binde ich dies nun in meinem QC ein?
Zudem fehlt da noch ein Mouse Listener so weit ich weiß.. oder täusche ich mich da nun??

Also gebt Euch einen Ruck und tut mir etwas gutes und schreibt mir hier den QC rein
damit ich es problemlos einbinden kann und mein Tag wieder OK ist.

Ist das zu viel verlagt oder bin ich im falschen Forum???

Danke!
 

dotlens

Top Contributor
chrizz hat gesagt.:
Ist das zu viel verlagt oder bin ich im falschen Forum???

klingt ja so als seien wir verpflichted dir zu helfen :S

ich mache deine aufgaben nicht, und wenn du noch nicht java kannst solltest du vieleicht mit etwas kleinerem beginnen. wenn du immer bloss QC reinkopierst lernst du nichts....
 

Sky

Top Contributor
Außerdem verstehe ich dein Problem nicht. Warum musst Du von einem Applet aus eine Seite mit einem anderem Applet aufrufen?

Wenn der Kerl am Monitor Java installiert hat, dann läuft dein Applet doch ganz von alleine (auch ohne Umleitung)! Und wenn Java nicht installiert ist, so kannst Du ihm einfach auf deiner HTML-Seite sagen, er soll installieren!
 

chrizz

Mitglied
uuuupssss.... sorry ich bin vielleicht schon zu alt aber so weit ich weiß ist
der Sinn und Zweck eines Forums anderen zu helfen und keine dummen
Kommentare abzugeben. Oder sich über emotionale Geschichten zu unterhalten,oder????


Du solltest vielleicht etwas vorsichtig sein, wenn Du jemandem den du nicht kennst Ratschläge
erteilst von wegen schwer und so... das kann schnell nach hinten losgehen, nicht wahr.

Ich brauche konkrete Hilfe und kein möchtegern schlaues Geschwafel von Teenagern
von wegen SC kopieren und nichts dabei lernen, ok.

NUR UND AUSSCHLIE?LICH durch die verwendung betrachtung und Analyse fremden QC ist man in der Lage
etwas zu verstehen, macht sich Gedanken warum so und nicht anders.... aber das hat sich anscheinend irgendwie geändert heute geht es daraum aus dem englischen übersetzte Anleitungen von Seite 1 bis 1000 durchzuselen
und nicht mal in der Lage sein so etwas simples lösen zu können. jaaaa mache weiter mit deinen tollen APPLETS mit wackeltext und schlag mich tot... *lol*

Wenn Deine Fähigkeiten in dieer Angelegenheit überfordert sind, dann sei doch so nett und schreibe hier
keinen Mist hinein, der mit der Sachen ansich nichts zu tun hat. Danke!

Wer nichst zu sagen hat der hält das .... heißt es doch so schön.

Nichts für ungut, aber ich dacht ich finde hier Leute vom alten Schlag die sich mit JAVA etwas auskennen.


 

chrizz

Mitglied
Ja aber es gibt auf der Welt noch Menschen die meinen dass es am Webdesigner liegt
wenn was nicht funktioniert und nich an der Politik mancher Firmen....
und für Erklärungen fehlt ihnen der IQ.

Auf der Folgeseite ist vom Layout her kein PLatz um irgendwelche Hinweise zu plazieren
(Ist ja ein PopUp Fensterle) , daher wird es in der Eingangsseite gemacht.

Momentan hat jeder die Möglichkeit auch auf die Anwendungsseite durch einen HTML Link zu gelagen,
das soll aber in Zukunft nur möglich sein, wenn JAVA aktiv ist (also über den link
der vom Applet ausgegeben wurde) und dann gibts keine Probleme.

Verstehst du mich??

Ich brauche eine Lösung für genau dieses Problem, ja nicht Diskussionen darüber wie man
es anders hätte lösen können, glaube mir.

cu
 

Stefan1200

Top Contributor
Ich hoffe mal nicht, das diese Disku hier in einem Streit endet...

Das ein Forum zum Helfen da ist, da sind wir uns auch einig. Aber in einem Programmiererforum gibt es immer das Problem, das Leute ankommen mit folgenden Satz: "Ich habe keine Ahnung, aber ich brauche das und das. Muss morgen fertig sein, macht hinne..."
Diesen Satz hören wir leider sehr oft. Und Sorry...aber ich habe weiß Gott was besseres zu tun, als in meiner Freizeit für lau anderen ein komplettes Programm/Applet zu programmieren, wovon ich gar nichts habe.

Nun zu deinem Problem:
Wenn ich daran denke, suche ich heute abend zuhause ein Source raus, den ich selbst mal gebraucht habe und poste den morgen mal hier. Das wird zwar keine Vollständige Lösung für dein Problem, aber eine Lösung, auf den du aufbauen kannst.

Wenn du dazu dann Fragen hast, nachdem du dich damit auseinander gesetzt hast, helfen wir dir sicher weiter.
 

chrizz

Mitglied
Hi Stefan,
danke. Wenn das zu viel Aufwand macht, dann streichen wir das halt.


Ich dachte dass dies ein wenig einfacher mit Java geht, und dass man es als Profi schon mal
aus dem Ärmel zaubern könnte, doch es scheint dass es aufwendiger ist als gedacht (schade).


Wenn Du dazu kommst, bin ich sehr dankbar. Ansonsten lasse ich es so wie es ist.
Mir wäre auch sofort eine Umleitung zu einer URL ohne ausgabe oder sonstoges helfen,
falls das einfacher ist. a la JavaScript:
Code:
window.location.href.replace="www.schaunurnetnach.de"


Also ein Applet mit einer Umleitung. Ist das einfacher zu realisieren?
Einfach ne sofortige Umleitung ohne Textausgabe.

Code:
public void showDocument(URL url, String target);

Ich kriege da Fehlermeldungen , wie sollte es denn richtig aussehen?


Vielen Dank noch mal!

PS: Bin halt auch im Stress :(
 

dotlens

Top Contributor
Code:
public void showDocument(new URL("http://www.google.ch"), "_blank");
anstatt _blank kannst du self schreien, dann wird es im selben Fenster geöffnet
 

Stefan1200

Top Contributor
chrizz hat gesagt.:
Wenn Du dazu kommst, bin ich sehr dankbar. Ansonsten lasse ich es so wie es ist.
Mir wäre auch sofort eine Umleitung zu einer URL ohne ausgabe oder sonstoges helfen,
falls das einfacher ist.

Das ist easy, dafür brauchst du nur die AppletContext Klasse für, die ich auch in meiner Methode verwendet habe ( http://java.sun.com/j2se/1.4.2/docs/api/java/applet/AppletContext.html#showDocument(java.net.URL) )
Sprich wenn das Applet gestartet wurde, öffnest du eine neue Seite.
Wie gesagt, wenn ich daran denke, poste ich morgen die paar Zeilen dafür.
 

chrizz

Mitglied
Hey danke,
kann es sein, dass da was fehlt?? Irgend ein Import von ner Klasse oder so was?


Also ne sofortige Umleitung würde wie folgt aussehen, oder?

Code:
import java.awt.*;
import java.applet.Applet;
import java.net.URL;

public class test extends Applet{
  public void showDocument(new URL("http://www.java-forum.org"), "_self");
}

Ich bekomme da 2 Fehlermeldungen:
Code:
F:\test.java:6: illegal start of type
  public void showDocument(new URL("http://www.java-forum.org"), "_self");
                           ^
F:\test.java:6: <identifier> expected
  public void showDocument(new URL("http://www.java-forum.org"), "_self");
                                                                         ^
Ich bin total begabt ich weiß :)

Danke Leute wo ost da jetzt der Wurm drin??
 

Sky

Top Contributor
Das ganze muss entweder im Konstruktor oder in einer Methode geschehen:

Code:
import java.awt.*; 
import java.applet.Applet; 
import java.net.URL; 

public class test extends Applet{ 
  public test() {
    this.getAppletContext().showDocument(new URL("http://www.java-forum.org"), "_self"); 
  }
}

Ganz nebenbei: Klassennamen sollte man gross schreiben ;-)
 

chrizz

Mitglied
Hallo Sky80,
danke für die Geburtshilfe :)
Bei mir kommt immer noch eine Fehlermeldung beim compilieren bei :
new URL und zwar: unreported exeption java.net.MalformeURLException; must be caught or declared to be thrown

-> Als nicht werfen ohne es vorher aufzufangen oder wie?
Habe folgenden SC verwendet auf einer MS XP Pro SP2 SDK 1_4 Maschine:

Code:
import java.awt.*;
import java.applet.Applet;
import java.net.URL;

public class test extends Applet{
  public test() {
    this.getAppletContext().showDocument(new URL("http://www.java-forum.org"), "_self");
  }
}

Wo soll denn url angemeldet werden?


PS: Habe alles klein da es nur zu Testzwecken sein soll und ich davon ausgegangen bin, dass der SC recht
überschaubar bleibt, aber dennoch danke!
 

Sky

Top Contributor
Code:
import java.awt.*; 
import java.applet.Applet; 
import java.net.URL; 

public class test extends Applet{ 
  public test() { 
    try {
      this.getAppletContext().showDocument(new URL("http://www.java-forum.org"), "_self");
    } catch (MalformedURLException ex) {
      ex.printStackTrace();
    }
  } 
}
 

chrizz

Mitglied
hmmmm... ähhh ich will ja niemanden shocken, aber ich bekomme da ne Fehlermeldung:

JAVA 9 : cannot resolve symbol
> catch (MalformedURLExeption
_______^


Was ist denn jetzt kaputt???

PS: Wenn ich gewusst hätte, das Euer Java so kompliziert ist, wäre ich heut im Bett geblieben :)

Trotzdem, vielen Dank für die Hilfe Jungs!
 

Illuvatar

Top Contributor
Das heißt MalformedURLException.
Außerdem ist das hoffentlich net die ganze Zeile.
Außerdem bringt der Code so nix, weil test nie aufgerufen wird.
 

Sky

Top Contributor
Also, bei mir läuft der Code, wenn ich ihn 1zu1 in die Klasse test.java schreibe und kompiliere!

Illuvatar hat gesagt.:
Außerdem bringt der Code so nix, weil test nie aufgerufen wird.
Warum wird denn der Konstruktor nicht aufgerufen??

Ich hatte zwar auch schon drauf hingewiesen, dass man Klassen der Lesbarkeit wegen gross schreiben sollte und ich bekam die Antwort:
chrizz hat gesagt.:
PS: Habe alles klein da es nur zu Testzwecken sein soll und ich davon ausgegangen bin, dass der SC recht
überschaubar bleibt, aber dennoch danke!
 

Stefan1200

Top Contributor
So, hier nun mein einfaches Beispiel:

Code:
import java.applet.*;
import java.net.*;

public class AppletOpenURL extends Applet
{
	public void init()
	{
		openURL("http://www.stefan1200.de", "_blank");
	}

	/**
	 * Open an url
	 *
	 * @param url - The url to open as String
	 * @param target - HTML target is needed here like _blank _top _self
	 */
	private void openURL(String url, String target)
	{
		try
		{
			getAppletContext().showDocument(new URL(url), target);
		}
		catch (MalformedURLException e)
		{
		}
	}
}


Und die HTML Datei zum Anzeigen des Applets.

Code:
<HTML>
<HEAD>
<TITLE>Applet Test Page</TITLE>
</HEAD>
<BODY>
<APPLET CODE="AppletOpenURL.class" NAME="AppletOpenURL" WIDTH="1" HEIGHT="1" ALIGN="middle" 
alt="Sie böser Junge, sie haben kein Java installiert...sofort hier her: http://www.java.com">
</APPLET>
</BODY>
</HTML>
 

Illuvatar

Top Contributor
sky80 hat gesagt.:
Also, bei mir läuft der Code, wenn ich ihn 1zu1 in die Klasse test.java schreibe und kompiliere!

Illuvatar hat gesagt.:
Außerdem bringt der Code so nix, weil test nie aufgerufen wird.
Warum wird denn der Konstruktor nicht aufgerufen??

OOps sry natürlich wird der Konstruktor aufgerufen. Ich hab mich wegen dem kleingeschriebenen Klassennamen eben bissle verlesen ;)
Trotzdem is Stefan1200s Lösung besser, denke ich.
 

Sky

Top Contributor
Illuvatar hat gesagt.:
Trotzdem is Stefan1200s Lösung besser, denke ich.

Wieso "besser"? Es geschieht doch genau das gleiche... In der Softwareentwicklung gibt es m.E. nicht immer eine "bessere" oder "schlechtere" Lösung. Manchmal sind (auch komplett) verschiedene Lösungen einfach "gleich gut" (oder schlecht).
 

Illuvatar

Top Contributor
Nun, weil so etwas bei einem Applet imho nicht in den Konstruktor gehört, weil es dafür eben init und start gibt, und weil er das Aufrufen an eine andere Methode delegiert, was den Code wiederverwendbarer und einfacher zu Lesen macht und die Kapselung erhöht.

Vom Effekt her isses natürlich gleich. ;)
 

Sky

Top Contributor
Im allgemeinem gebe ich Dir vollkommen recht. Nur in diesem besonderem Fall, wo das Applet einfach mal nix anderes machen soll ist es ziemlich egal ;-)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Fehler in Uhrzeitapplet (vor ein paar tagen gings noch) Tools - Maven, Gradle, Ant & mehr 19
W Git - Nur einen Branch (z.B. Master) in ein Repository pushen Tools - Maven, Gradle, Ant & mehr 12
M jpackage zusätzlich zu deb installer auch einen windows installer bauen Tools - Maven, Gradle, Ant & mehr 9
8u3631984 Gradle : Baue anderes Modul und packe es in einen Docker Container Tools - Maven, Gradle, Ant & mehr 0
P Mit Maven einen spezifischen Branch nach Tag-Parameter erstellen (in Jenkins-Job) Tools - Maven, Gradle, Ant & mehr 3
P Nur einen Teilbaum in Maven releasen? Tools - Maven, Gradle, Ant & mehr 7
K Jenkins Konfiguration für einen multi-module Maven Projekt Tools - Maven, Gradle, Ant & mehr 2
G Ant Hudson/Jenkins, Ant und JUnit unter einen Hut bringen Tools - Maven, Gradle, Ant & mehr 12
L Mit Ant/Maven einen RCP-Application exportieren? Tools - Maven, Gradle, Ant & mehr 2
V Suche einen Installer Tools - Maven, Gradle, Ant & mehr 4
H Problem mit einen Applet Tools - Maven, Gradle, Ant & mehr 5
J Applet das einen Mittelwert ausrechnen soll Tools - Maven, Gradle, Ant & mehr 10
F Hilfe, wie programmiert man einen Packer mit Java? Tools - Maven, Gradle, Ant & mehr 2
J Dateien auf einen anderen Rechner bekommen Tools - Maven, Gradle, Ant & mehr 8
D applet + hyperlink Tools - Maven, Gradle, Ant & mehr 13
P Hyperlink in Applet integrieren Tools - Maven, Gradle, Ant & mehr 2

Ähnliche Java Themen

Neue Themen


Oben