Applet Applet Komponenten flackern

greatesthero

Mitglied
Hallo
Ich bin Lernender Informatiker im 2. Lehrjahr und ein totaler Anfänger in Java.
Ich muss für meine Abteilung ein Applet programmieren, welches eine Analog Uhr anzeigt und Hostname und IP Adresse ausliest. Das Applet ist nur eine Demo für ein Ant Skript und sieht deshalb auch ziemlich billig aus.
Ich habe aber das Problem, dass der Hostname und IP Adresse im Browser flackert und ich bringe das nicht weg. Im Appletviewer funktionierts aber im Browser nicht.

Java:
package TestApplet;

import java.awt.*;
import java.io.IOException;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.*;

import javax.swing.JApplet;

public class Main extends JApplet implements Runnable {
	private static final long serialVersionUID = 2752628346220939031L;
	Color farbe;
	static String ipAddr;
	static String hostname;
	Image buffer;
	Graphics2D gBuffer;
	
	private Image offScreenImage;
	private Dimension offScreenSize;
	private Graphics offScreenGraphics;
	
	Thread runner;

	Calendar date;
	
	int nn=100, r=80;

	public void init() {
		this.setBackground(new Color(255,255,255));
		this.setSize(1280, 1024);
		
		try {
			ipAuslesen();
		} catch (UnknownHostException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	
	public void ipAuslesen() throws UnknownHostException, IOException {
		try {
			InetAddress addr = InetAddress.getLocalHost();
			ipAddr = addr.getHostAddress();
			hostname = addr.getHostName();
		}
		catch (UnknownHostException e) {
		
		}
			
	}
		
	public void start() {
		if (runner == null) {
			runner = new Thread(this);
			runner.start();
		}
	}	
	
	public void stop() {
		if (runner != null) {
			runner.stop();
			runner = null;
		}
	}
	
	public void run() {
		
		while (true) {
			
			repaint();
			
			try {
				Thread.sleep(0);
			}
			catch (InterruptedException e) { 
				
			}
			
		}
	}
	
	public void paint(Graphics g) {
		g.drawString("IP Adresse: " + ipAddr, 35, 220);
		g.drawString("Hostname:	 " + hostname, 35, 250);
		
		// Double Buffering
		if (buffer==null) {
			buffer=createImage(this.getSize().width, this.getSize().height);
			gBuffer=(Graphics2D)buffer.getGraphics();
		}
		gBuffer.clearRect(0,0,this.getSize().width, this.getSize().height);
	
		// Antialiasing
		gBuffer.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
				RenderingHints.VALUE_ANTIALIAS_ON);
	
		gBuffer.setColor(new Color(0,0,0));
		gBuffer.drawOval(nn-2,nn-2,4,4);
	
		// Striche bei 3, 6, 9 und 12 Uhr
		for (int i=0; i<4; i++) {
			gBuffer.drawLine(
					nn+(int)((r-7)*Math.cos(Math.toRadians(90*i))),
					nn+(int)((r-7)*Math.sin(Math.toRadians(90*i))),
					nn+(int)(r*Math.cos(Math.toRadians(90*i))),
					nn+(int)(r*Math.sin(Math.toRadians(90*i))));
		}
		// Striche bei jeder Stunde
		for (int i=0; i<12; i++) {
			gBuffer.drawLine(
					nn+(int)((r-5)*Math.cos(Math.toRadians(30*i))),
					nn+(int)((r-5)*Math.sin(Math.toRadians(30*i))),
					nn+(int)(r*Math.cos(Math.toRadians(30*i))),
					nn+(int)(r*Math.sin(Math.toRadians(30*i))));
		}
		// Striche bei jeder Minute
		for (int i=0; i<60; i++) {
			gBuffer.drawLine(
					nn+(int)((r-2)*Math.cos(Math.toRadians(6*i))),
					nn+(int)((r-2)*Math.sin(Math.toRadians(6*i))),
					nn+(int)(r*Math.cos(Math.toRadians(6*i))),
					nn+(int)(r*Math.sin(Math.toRadians(6*i))));	;
		}
	
		date = new GregorianCalendar();
	
		int hours = date.get(Calendar.HOUR_OF_DAY);
		int minutes = date.get(Calendar.MINUTE);
		int seconds = date.get(Calendar.SECOND);
		
		// Stunden
		gBuffer.drawLine(
				nn,nn,nn+(int)(60*Math.cos(Math.toRadians(hours%12*30+minutes/2.0-90))),
				nn+(int)(60*Math.sin(Math.toRadians(hours%12*30+minutes/2.0-90))));
		
		// Minuten
		gBuffer.drawLine(
				nn,nn,nn+(int)(85*Math.cos(Math.toRadians(minutes*6-90))),
				nn+(int)(85*Math.sin(Math.toRadians(minutes*6-90))));
	
		// Sekunden
		gBuffer.setColor(new Color(170,170,170));
		gBuffer.drawLine(
				nn,nn,nn+(int)(90*Math.cos(Math.toRadians(seconds*6-90))),
				nn+(int)(90*Math.sin(Math.toRadians(seconds*6-90))));
	
		g.drawImage(buffer, 0, 0, this);		
					
	}
	
	public final synchronized void update(Graphics g) {
		Dimension d = getSize();
		if((offScreenImage == null) || (d.width != offScreenSize.width) || (d.height != offScreenSize.height)) {
			offScreenImage = createImage(d.width, d.height);
			offScreenSize = d;
			offScreenGraphics = offScreenImage.getGraphics();
		}
		offScreenGraphics.clearRect(0, 0, d.width, d.height);
		paint(offScreenGraphics);
		g.drawImage(offScreenImage, 0, 0, 0, 0, null);
	}	
}

Woran liegts?
 

Lars789852

Aktives Mitglied
Hallo,

du löschst bei jedem paint den Inhalt (z. 93), was eigentlich nicht nötig ist. Bei jedem paint bekommt eine Komponente eine weiße Fläche, wo das Graphics Objekt dann drauf rummalen kann. Außerdem arbeitest du mit getGraphics(), was nicht empfohlen ist. Am besten ist es, alles, was mit Zeichnen zutun hat, in der paint() abzuhandeln. Dort bekommt man nämlich über den Parameter ein frisches Graphics Objekt. Übrigens verwendet man beim Malen eher die paintComponent(), aber da dein Applet ja die ganze GUI ausfüllt, ist das egal.
 

greatesthero

Mitglied
Hi
Danke für diie schnelle Antwort. Ich muss zugeben, dass ich den Code für die Uhr aus dem Internet geklaut habe.
Was könnte ich den am Code deiner Meinung nach verändern? Ich habe aus deiner antwort keinen konkreten lösungsvorschlag herausgelesen

gruss greatesthero
 

dzim

Top Contributor
Ich würde einfach nicht alles selbst machen, sondern zwei Text-Felder auf ein layout legen. Und für die Uhr tun es ein paar einfache images. Die Zeiger zwei Striche, die man einfach auf einen bestimmten Winkel rotiert.
 

dzim

Top Contributor
Damit kann ich gerade leider nicht weiterhelfen. Bin im Moment nur auf dem Tablet unterwegs und aus dem Kopf bekomme ich das auch nicht hin :)
 

dzim

Top Contributor
Also unter Eclipse (WindowBuilder) und NetBeans (integriert, soweit ich weiß) gibt es Tools, um Oberflächen per Drag-&-Drop zusammenzufügen. Sollte eigentlich selbsterklärend sein.
Und: Wenn schon unbedingt Applets (muss ich leider auch gerade machen - aus technologischer Sicht nun mal absolut überholt), dann würde ich schon JavaFX statt AWT/Swing verwenden - dann sieht es wenigstens auch ohne grosse Arbeit bereits halbwegs vernünftig aus (gut wird's dann bei JFX mit CSS und Effekten). Auch hier gilt: NetBeans unterstützt es out-of-the-Box, Eclipse via dem Plugin "e(fx)clipse".

Grundsätzlich gilt: Verwende ein Layout (aber nicht Null-/AbsolutLayout), und werfe alle Komponenten hinein.
In JavaFX wäre es in etwa so (Pseudo-Code - besser wäre es auch mit FXML zu machen):
Java:
VBox parent = new VBox();

StackPane clock = new StackPane();
ImageView clockBg = new ImaveView(...); // Ziffernblatt
ImageView clockHour = new ImaveView(...); // Stundenzeiger
ImageView clockMinute = new ImaveView(...); // Minutenzeigen
clock.add(clockBg, clockHour, clockMinute);

Label ip = new Label("127.0.0.1"); //...
Label host = new Label("localhost"); //...

parent.add(clock, ip, host);

// now add parent to a Scene and show it...
Wie gesagt, das ist nur ein Stub, aber der Aufbau sollte klar sein und ist, abgesehen von den Klassen, auch auf andere Frameworks übertragbar. In JavaFX, aber auch in Swing sollte man es können) einfach die Images rotieren - so könntest du die Bewegung der Zeiger abbilden.

Savvy? Good Luck!

PS: Wenn du eine "richtige" Web-Anwendung mit Java machen möchtest, schaut dir mal GWT, oder besser Vadin an. Alternativ kannst du auch Eclipse RAP verwenden (RAP kann fast mit dem selben Code wie SWT-Desktop-Anwendungen entwickelt werden).
 

dzim

Top Contributor
Ok, ein klein wenig mehr. Ich verwende Eclipse und das e(fx)clipse-Plugin.
Zuerst habe ich mit Gimp drei einfache Icons erstellt (siehe Anhang) - kostet keine 5min Zeit!

Dann ein FXGraph anlegen:
Code:
package my.package.ui.layout

import javafx.scene.layout.VBox
import javafx.scene.layout.StackPane
import javafx.scene.image.ImageView
import javafx.scene.image.Image
import javafx.geometry.Insets
import javafx.scene.control.Label
import java.lang.Double
import my.package.ui.layout.ClockController

component Clock controlledby ClockController {
	VBox id parent {
		StackPane id stackPaneClock {
			ImageView id imageViewClockBackground {
				image : Image {
					url : location "./ClockBG.png"
				}, static alignment : "CENTER"
			}, ImageView id imageViewClockHour {
				image : Image {
					url : location "./ClockHour.png"
				}, static alignment : "CENTER"
			}, ImageView id imageViewClockMinute {
				image : Image {
					url : location "./ClockMinute.png"
				}, static alignment : "CENTER"
			}, static margin : Insets {
				left : 10,
				top : 10,
				right : 10,
				bottom : 25
			}
		}, Label id labelIP {
			text : "127.0.0.1",
			alignment : "CENTER",
			maxWidth : const Double#MAX_VALUE, static vgrow : "ALWAYS"
		}, Label id labelHost {
			text : "localhost",
			alignment : "CENTER",
			maxWidth : const Double#MAX_VALUE, static vgrow : "ALWAYS"
		}
	}
}
das wird automatisch zu folgendem FXML übersetzt:
[XML]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Do not edit this file it is generated by e(fx)clipse from ../src/my/package/ui/layout/Clock.fxgraph
-->

<?import java.lang.*?>
<?import javafx.geometry.Insets?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.image.Image?>
<?import javafx.scene.image.ImageView?>
<?import javafx.scene.layout.StackPane?>
<?import javafx.scene.layout.VBox?>

<VBox xmlns:fx="http://javafx.com/fxml" fx:id="parent" fx:controller="my.package.ui.layout.ClockController">

<StackPane fx:id="stackPaneClock">
<ImageView fx:id="imageViewClockBackground" StackPane.alignment="CENTER">
<image>
<Image url="@./ClockBG.png"/>
</image>
</ImageView>
<ImageView fx:id="imageViewClockHour" StackPane.alignment="CENTER">
<image>
<Image url="@./ClockHour.png"/>
</image>
</ImageView>
<ImageView fx:id="imageViewClockMinute" StackPane.alignment="CENTER">
<image>
<Image url="@./ClockMinute.png"/>
</image>
</ImageView>
<VBox.margin>
<Insets left="10" top="10" right="10" bottom="25"/>
</VBox.margin>
</StackPane>
<Label fx:id="labelIP" text="127.0.0.1" alignment="CENTER" VBox.vgrow="ALWAYS">
<maxWidth><Double fx:constant="MAX_VALUE" /></maxWidth>
</Label>
<Label fx:id="labelHost" text="localhost" alignment="CENTER" VBox.vgrow="ALWAYS">
<maxWidth><Double fx:constant="MAX_VALUE" /></maxWidth>
</Label>
</VBox>
[/XML]

Das Ganze sieht dann wie im ClockPreview.png (siehe Anhang) aus.
Du musst einen Controller schreiben - [STRIKE]die Arbeit nehme ich dir nicht ab,[/STRIKE] da musst du schon googlen - dort kannst du dann via
Code:
imageViewHour.setRotate(10); // some value
deine Zeiger rotieren. Da du das von einem anderen Thread aus machen wirst, darfst du nicht vergessen, dass du es in ein Konstrukt á la
Java:
Platform.runLater(new Runnable() {
	@Override
	public void run() {
		// do something
	}
});
zu verpacken.

Weil ich so nett bin, habe ich doch noch einen Stub für den Controller geschrieben:
Java:
package my.package.ui.layout;

import java.util.Calendar;

import javafx.application.Platform;
import javafx.fxml.FXML;
import javafx.scene.control.Label;
import javafx.scene.image.ImageView;
import javafx.scene.layout.StackPane;
import javafx.scene.layout.VBox;

public class ClockController {
	
	@FXML
	private VBox parent;
	@FXML
	private StackPane stackPaneClock;
	@FXML
	private ImageView imageViewClockBackground;
	@FXML
	private ImageView imageViewClockHour;
	@FXML
	private ImageView imageViewClockMinute;
	@FXML
	private Label labelIP;
	@FXML
	private Label labelHost;
	
	/**
	 * implicit method
	 */
	@FXML
	public void initialize() {
		// retrieve the IP and host name and set it
		labelIP.setText("127.0.0.1");
		labelHost.setText("localhost");
		// rotate the clock ticks
		imageViewClockHour.setRotate(90); // the angle for the hour
		imageViewClockMinute.setRotate(270); // the angle for the minute
		// start the thread
		Thread t = new Thread(new TimerRunnable());
		t.start();
	}
	
	/**
	 * use this in your thread
	 */
	private void setTime(final double hourAngle, final double minuteAngle) {
		Platform.runLater(new Runnable() {
			@Override
			public void run() {
				imageViewClockHour.setRotate(hourAngle);
				imageViewClockMinute.setRotate(minuteAngle);
			}
		});
	}
	
	private class TimerRunnable implements Runnable {
		@Override
		public void run() {
			// think about some intelligent stop-trigger, otherwise the thread will keep alive
			while (true) {
				Calendar c = Calendar.getInstance();
				int hour = c.get(Calendar.HOUR);
				int minute = c.get(Calendar.MINUTE);
				// calculate angles and set the time
				setTime(90, 270); // use the calculated angles here
				try {
					Thread.sleep(1000); // wait a second till the next cycle...
				} catch (InterruptedException e) {}
			}
		}
	}
}
Alles was noch offen ist, ist beschrieben.

Deine Start-Klasse sieht dann in etwa wie folgt aus:
Java:
package my.package.ui.layout;

import javafx.application.Application;
import javafx.application.Platform;
import javafx.fxml.FXMLLoader;
import javafx.scene.Scene;
import javafx.scene.image.Image;
import javafx.scene.layout.Pane;
import javafx.stage.Stage;
import javafx.stage.WindowEvent;

public class ClockMain extends Application {
	
	@Override
	public void start(Stage primaryStage) throws Exception {
		try {
			FXMLLoader fxmlLoader = new FXMLLoader();
			// fxmlLoader.setResources(StringResource.getResourceBundle()); // a Java resource bundle - using property files
			fxmlLoader.setLocation(ClockMain.class.getResource("Clock.fxml"));
			Pane root = (Pane) fxmlLoader.load();
			Scene scene = new Scene(root, 640, 480); // your app's size
			// scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm()); // if you have one
			
			primaryStage.getIcons().add(new Image(ClockMain.class.getResourceAsStream("application_icon.png"))); // for desktop apps
			
			primaryStage.setScene(scene);
			primaryStage.setMinWidth(960);
			primaryStage.setMinHeight(450);
			primaryStage.show();
			
			primaryStage.setOnCloseRequest(new javafx.event.EventHandler<WindowEvent>() {
				@Override
				public void handle(WindowEvent event) {
					// trigger to stop the controller
					// a) via some event mechanism
					// b) via exposure of a mechanism to stop the thread in the controller
					//    --> e.g.: ((ClockController)fxmlLoader.getController()).stopThread(true);
					Platform.exit();
				}
			});
			
		} catch (Exception e) {
			e.printStackTrace();
			Platform.exit();
		}
	}
	
	public static void main(String[] args) {
		launch(args);
	}
}

Für Ant brauchst du ein paar (relativ gut beschriebene) spezielle Ant-Tasks von Oracle - ich kann dir nicht sagen, ob es out-of-the-Box klappt, aber unter Eclipse mit besagtem Plugin ging es auf Anhieb...
[XML]
<?xml version="1.0" encoding="UTF-8"?>

<!-- copy to build before executing, otherwise this script needs to be rewritten -->

<project name="Applet" default="do-deploy" basedir="." xmlns:fx="javafx:com.sun.javafx.tools.ant">
<target name="init-fx-tasks">
<path id="fxant">
<filelist>
<file name="${java.home}\..\lib\ant-javafx.jar"/>
<file name="${java.home}\lib\jfxrt.jar"/>
</filelist>
</path>

<taskdef resource="com/sun/javafx/tools/ant/antlib.xml"
uri="javafx:com.sun.javafx.tools.ant"
classpathref="fxant"/>
</target>
<target name="setup-staging-area">
<delete dir="externalLibs" />
<delete dir="project" />
<delete dir="projectRefs" />

<mkdir dir="externalLibs" />

<copy todir="externalLibs">
<fileset dir="<your-path>\Applet\libs">
<filename name="some-lib.jar"/>
</fileset>
</copy>

<mkdir dir="project" />
<copy todir="project">
<fileset dir="<your-path>\Applet">
<include name="src/**" />
</fileset>
</copy>

<mkdir dir="projectRefs" />
</target>
<target name='do-compile'>
<delete dir="build" />
<mkdir dir="build/src" />
<mkdir dir="build/libs" />
<mkdir dir="build/classes" />

<!-- Copy project-libs references -->
<copy todir="build/libs">
<fileset dir="externalLibs">
<include name="some-lib.jar"/>
</fileset>
</copy>

<!-- Copy project references -->

<!-- Copy project sources itself -->
<copy todir="build/src">
<fileset dir="project/src">
<include name="**/*"/>
</fileset>
</copy>

<javac includeantruntime="false" source="1.7" target="1.7" srcdir="build/src" destdir="build/classes" encoding="Cp1252">
<classpath>
<fileset dir="build/libs">
<include name="*"/>
</fileset>
<filelist>
<file name="C:\Program Files\Java\jdk1.7.0_11\jre\lib\jfxrt.jar"/>
</filelist>
</classpath>
</javac>

<!-- Copy over none Java-Files -->
<copy todir="build/classes">
<fileset dir="project/src">
<exclude name="**/*.java"/>
</fileset>
</copy>


</target>
<target name="do-deploy" depends="setup-staging-area, do-compile, init-fx-tasks">
<delete file="dist"/>
<delete file="deploy" />

<mkdir dir="dist" />
<mkdir dir="dist/libs" />
<mkdir dir="dist/js" />

<copy todir="dist/libs">
<fileset dir="externalLibs">
<include name="*" />
</fileset>
</copy>


<fx:resources id="appRes">
<fx:fileset dir="dist" includes="Applet.jar"/>
<fx:fileset dir="dist" includes="libs/*"/>
<fx:fileset dir="dist" includes="js/*"/>
</fx:resources>

<fx:application id="fxApplication"
name="SpeedTest Internet Performance Benchmarking"
mainClass="my.package.ui.layout.ClockMain"
toolkit="fx"
/>

<mkdir dir="build/classes/META-INF" />



<fx:jar destfile="dist/Applet.jar">
<fx:application refid="fxApplication"/>
<fileset dir="build/classes">
</fileset>
<fx:resources refid="appRes"/>

<manifest>
<attribute name="Implementation-Vendor" value="cnlab AG"/>
<attribute name="Implementation-Title" value="SpeedTest Internet Performance Benchmarking"/>
<attribute name="Implementation-Version" value="0.0.1"/>
<attribute name="JavaFX-Feature-Proxy" value="None"/>
</manifest>
</fx:jar>

<!-- Need to use ${basedir} because somehow the ant task is calculating the directory differently -->
<fx:signjar
keystore="<path-to-a-keystore-or-it-wont-work>\keystore.jks"
alias="app"
keypass="changeit"
storepass="changeit"
destDir="${basedir}/dist"
verbose="true">
<fileset dir='dist'>
<include name='**/*.jar' />
</fileset>
</fx:signjar>

<mkdir dir="deploy" />
<!-- Need to use ${basedir} because somehow the ant task is calculating the directory differently -->
<fx:deploy
embedJNLP="false"
extension="false"
width="960" height="500"
includeDT="false"
offlineAllowed="true"
outdir="${basedir}/deploy"
outfile="Applet" nativeBundles="none"
placeholderref="app-placeholder"
placeholderid="appId"
updatemode="background" >

<fx:info title="Applet" vendor="ImTheVender"/>
<fx:application refId="fxApplication"/>
<fx:resources refid="appRes"/>
<fx:permissions elevated="true"/>
</fx:deploy>


</target>
</project>
[/XML]
Wichtig ist wahrscheinlich, dass du dir einen Keystore erstellst, sonst kannst du die JavaFX-Applets nicht ausführen. Über die ClockMain-Klasse kann man aber wunderbar testen, bevor man deployt.
 

Anhänge

  • ClockBG.png
    ClockBG.png
    357 Bytes · Aufrufe: 24
  • ClockHour.png
    ClockHour.png
    342 Bytes · Aufrufe: 24
  • ClockMinute.png
    ClockMinute.png
    375 Bytes · Aufrufe: 25
  • ClockPreview.png
    ClockPreview.png
    5,7 KB · Aufrufe: 28

greatesthero

Mitglied
Danke für deine Mühe, aber ich möchte eigentlich nicht alles komplett neu schreiben. Mein Code funktioniert ja eigentlich so wie es sein sollte, nur nicht wenn ich das Applet im Browser ausführe.

Ein funktionierendes Ant Skript, dass das Applet signiert habe ich.
 

dzim

Top Contributor
Naaaaaajaaaaa... Mit dem Ganzen Code, den ich hier chon gepostet habe, wäre ein "neu schreiben" eine Sache von wenigen Stunden (wahrscheinlich nur einer, weil kaum noch Funktionalität fehlt).
Prinzipiell denke ich für dich wäre eins wichtig: Mach die Uhr meinetwegen auf dem Canvas-Objekt (wie gesagt: du kannst IMHO auch unter Swing GUI-Elemente rotieren), aber Verwende dennoch ein Layout und mach die beiden Textfelder als Labels. Dein Problem ist einfach, das du in jeder Runde alles neu zeichnest, das ist Overkill!
Wie dem auch sei: Mehr Hilfestellung als das kann und werde ich dir in dem Thema nicht geben! Viel Erfolg weiterhin!
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Grafikformat für AWT-Applet? AWT, Swing, JavaFX & SWT 0
I Applet BlueJ Applet - Bild mit if-Schleife zeichnen lassen AWT, Swing, JavaFX & SWT 16
T Applet Applet in JFrame einbinden AWT, Swing, JavaFX & SWT 8
C Applet Applet funktioniert in Eclipse aber nicht in Browser AWT, Swing, JavaFX & SWT 1
S Sandboxed Applet weiterhin moeglich..? AWT, Swing, JavaFX & SWT 5
S Oracle's neue Sicherheitseinstellungen zerstoeren mein Applet. Was tun? AWT, Swing, JavaFX & SWT 3
U CardLayout im Applet AWT, Swing, JavaFX & SWT 4
J Applet Applet Vererbung/Überladen AWT, Swing, JavaFX & SWT 5
G JavaFX mit ANT deployen als Applet AWT, Swing, JavaFX & SWT 3
S Applet Application 2 applet AWT, Swing, JavaFX & SWT 3
T Applet JTattoo Look and Feel AWT, Swing, JavaFX & SWT 5
T Signiertes Applet Urheber angeben AWT, Swing, JavaFX & SWT 5
S Applet Repaint AWT, Swing, JavaFX & SWT 3
B Java-Applet Parameter übergabe? AWT, Swing, JavaFX & SWT 2
M Applet mit Bildern AWT, Swing, JavaFX & SWT 2
T Applet in JSP einbinden AWT, Swing, JavaFX & SWT 4
R MouseEvent.getX() liefert in Applet Screen-Koordinate AWT, Swing, JavaFX & SWT 2
K Applet Wieso kann ich keine Array im Applet initialisieren AWT, Swing, JavaFX & SWT 13
A Applet Applet vom Web-Server aus aufrufen AWT, Swing, JavaFX & SWT 11
A Applet Applet startet nicht AWT, Swing, JavaFX & SWT 2
P Tatsächliche Größe für Applet AWT, Swing, JavaFX & SWT 3
B Applet Aus Applet signiertes jar mit externen libs erstellen AWT, Swing, JavaFX & SWT 9
S JDialog über Applet AWT, Swing, JavaFX & SWT 3
M Warum funktioniert mein Applet nicht? AWT, Swing, JavaFX & SWT 6
D Applet hintergrund wird nicht weiß AWT, Swing, JavaFX & SWT 2
R Applet JavaScript Methodenaufruf AWT, Swing, JavaFX & SWT 2
A Applet Animiertes gif in awt applet anzeigen AWT, Swing, JavaFX & SWT 11
X Applet Java Applet Datei Ausführung AWT, Swing, JavaFX & SWT 9
A Applet .gif in applet Image nicht animiert angezeigt AWT, Swing, JavaFX & SWT 4
A Applet Applet aus Code neu starten AWT, Swing, JavaFX & SWT 2
K Applet erkennt keine Frameverkleinerung AWT, Swing, JavaFX & SWT 5
S Applet funktioniert nach Browserreload nicht richtig AWT, Swing, JavaFX & SWT 2
T Applet Applet vs. WebStart AWT, Swing, JavaFX & SWT 4
S Applet starten AWT, Swing, JavaFX & SWT 4
K JTable im Browser nicht zu sehen - Applet AWT, Swing, JavaFX & SWT 6
B Applet Button oder Toolbar in einem Applet AWT, Swing, JavaFX & SWT 5
V Applet mit Bildbearbeitung AWT, Swing, JavaFX & SWT 3
V Applet Applet starten schlägt fehl AWT, Swing, JavaFX & SWT 2
W Button in Applet AWT, Swing, JavaFX & SWT 9
kniffel GUI-Applet JTable füllt Hintergrund völlig aus AWT, Swing, JavaFX & SWT 4
J Applet Java-Applet friert mit Firefox ein AWT, Swing, JavaFX & SWT 8
J Applet Tetris flackert AWT, Swing, JavaFX & SWT 9
F Applet Applet starten...(+Timer?) AWT, Swing, JavaFX & SWT 12
S [JAVA] JFrame in Applet/JApplet AWT, Swing, JavaFX & SWT 14
D Applet Applet das auf fremden Libraries basiert einbinden? AWT, Swing, JavaFX & SWT 20
M Applet wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
M JMenuBar im Applet und paint AWT, Swing, JavaFX & SWT 9
E Applet Neuen Tab aus Applet öffnen AWT, Swing, JavaFX & SWT 3
G Applet, Link ermitteln, dem der Benutzer gefolgt ist AWT, Swing, JavaFX & SWT 2
K Email versenden ueber Applet AWT, Swing, JavaFX & SWT 11
S Applet in JFrame einbinden AWT, Swing, JavaFX & SWT 6
S Button aktivieren (Applet) AWT, Swing, JavaFX & SWT 2
3 Applet Applet zeigt nur weiße Fläche AWT, Swing, JavaFX & SWT 15
B 2 Probleme (JFrame & Applet) AWT, Swing, JavaFX & SWT 7
A Programmieren einer Agenda mit einer Liste (als Applet und .txt zum Speichern) AWT, Swing, JavaFX & SWT 7
H applet Methode aus abstrakter Klasse aufrufen AWT, Swing, JavaFX & SWT 12
H Applet - Hilfedateien im Browser öffnen / eine Webseite laden AWT, Swing, JavaFX & SWT 6
O JPanel aus Applet starten AWT, Swing, JavaFX & SWT 3
O Applet-Steuerung mit Tastaturbefehlen AWT, Swing, JavaFX & SWT 3
F 4-Gewinnt als Applet AWT, Swing, JavaFX & SWT 24
F Applet vs Stand-Alone-Client AWT, Swing, JavaFX & SWT 3
B AWT Bild als Hintergrund im Applet AWT, Swing, JavaFX & SWT 2
D Probleme mit MouseWheelListener und JLayeredPane in Applet AWT, Swing, JavaFX & SWT 2
G Applet und Swing Anwendung AWT, Swing, JavaFX & SWT 2
S Applet - Aerger mit dem Hintergrundbild - JLabel und JTextfield AWT, Swing, JavaFX & SWT 7
F Applet zeigt Bilder nicht an AWT, Swing, JavaFX & SWT 5
R for-Schleife in Applet ausgeben AWT, Swing, JavaFX & SWT 3
S Bild wird auf Canvas in Applet nicht gezeichnet AWT, Swing, JavaFX & SWT 4
W Swing heapsort + Applet AWT, Swing, JavaFX & SWT 4
P Diagramm in einem Applet zeichnen AWT, Swing, JavaFX & SWT 4
M Java Applet JTable/JList AWT, Swing, JavaFX & SWT 6
L Einfache Layout Frage für Applet -> Was mache ich bloss falsch? AWT, Swing, JavaFX & SWT 2
K Alternative zu Applet mit HTML-Einbindung AWT, Swing, JavaFX & SWT 11
J Java-Applet beenden AWT, Swing, JavaFX & SWT 3
R Applet aus JFrame starten AWT, Swing, JavaFX & SWT 2
T Konfiguration speichern in Applet AWT, Swing, JavaFX & SWT 2
P Swing Roter Faden beim Applet GUI Programmieren AWT, Swing, JavaFX & SWT 2
T HTML Seite neu laden mittels Applet AWT, Swing, JavaFX & SWT 2
T Icon von Frame ändern - Applet AWT, Swing, JavaFX & SWT 2
T Java Applet beenden AWT, Swing, JavaFX & SWT 2
M Swing Butten & TextFields aus Applet im JFrame nicht sichtbar AWT, Swing, JavaFX & SWT 2
I Swing .Jar Datei - funktioniert - nun als Applet AWT, Swing, JavaFX & SWT 13
S Applet mit Graphics dynamisch vergrößern AWT, Swing, JavaFX & SWT 3
M AWT text im applet formatieren AWT, Swing, JavaFX & SWT 5
L Applet Frage AWT, Swing, JavaFX & SWT 25
1 Verständnisprobleme bei Java Applet AWT, Swing, JavaFX & SWT 13
B Unterschied JFrame/Applet AWT, Swing, JavaFX & SWT 12
T [Applet] startet in Eclipse aber nicht im Browser AWT, Swing, JavaFX & SWT 2
G JSlider in Applet AWT, Swing, JavaFX & SWT 4
P Swing Applet AWT, Swing, JavaFX & SWT 2
R problem mit bildanzeige in applet und main AWT, Swing, JavaFX & SWT 2
A Applet kommt offline nicht mit FileReader zurecht AWT, Swing, JavaFX & SWT 3
F Applet und Popup AWT, Swing, JavaFX & SWT 4
G Wie startet man ein Applet ? AWT, Swing, JavaFX & SWT 4
R Ein Applet von einem Applet öffnen lassen AWT, Swing, JavaFX & SWT 2
Z Applet ausblenden AWT, Swing, JavaFX & SWT 5
G JList wird in einem Applet nur teilweise aktualisiert AWT, Swing, JavaFX & SWT 12
P Applet darstellung von Textfeldern Problem AWT, Swing, JavaFX & SWT 3
I Applet --> neues Fenster öffnen AWT, Swing, JavaFX & SWT 11
I Applet mit Panels (so richtig, gehts besser?) AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben