Java - Programmierung - Applets 1

Java - Programmierung - Applets 1 import import import import java.awt.*; java.awt.event.*; java.applet.Applet; Display; public class Oszi extends A...
0 downloads 0 Views 10KB Size
Java - Programmierung - Applets 1 import import import import

java.awt.*; java.awt.event.*; java.applet.Applet; Display;

public class Oszi extends Applet implements Runnable, ActionListener, ItemListener, TextListener, AdjustmentListener { Frame f; Thread change_phi; Display disp; Button b[]; Scrollbar sb; Checkbox cbd, cbl; TextField tf; boolean dyn; int phi, fw, art; public void init() { change_phi = null; phi = 0; fw = 1; art = 0; dyn = false;

setBackground(Color.lightGray); setLayout(new BorderLayout()); // oben Panel oben = new Panel(); oben.setLayout(new FlowLayout(FlowLayout.CENTER)); b = new Button[5]; b[0] = new Button(" sin( x) "); b[1] = new Button(" sin(2x) "); b[2] = new Button("sin( x) + 1/3 sin(3x)"); b[3] = new Button("sin(2x) + 1/3 sin(6x)"); for ( int i = 0; i 360) phi = 360; sb.setValue(phi); disp_new(); } }

public void adjustmentValueChanged (AdjustmentEvent e) { Object obj = e.getSource(); if (obj == sb) { phi = sb.getValue(); tf.setText(new Integer(phi).toString()); disp_new(); } } public void actionPerformed (ActionEvent e) { Object obj = e.getSource(); if (obj instanceof Button) { for (int i = 0; i < 4; i++) if (obj == b[i]) fw = i + 1; if (obj == b[4]) { fw = 0; art = 0; phi = 0; dyn = false; tf.setText("0"); sb.setValue(phi); cbd.setState(false); cbl.setState(false); } disp_new(); } } void disp_new() { disp.new_function(art + fw, phi); disp.repaint(); } }

Prof. Dr.-Ing. habil. B. Steinbach - Informatik / Softwaretechnologie und Programmierungstechnik - Institut für Informatik

Java - Programmierung - Applets 5 Oszilloscop Oszilloscop Mit einem Oszilloscop können Sie die Spannungsverläufe als Funktion der Zeit beobachten In der obigen Nachbildung eines Oszilloscops können Sie zwischen vier verschieden Spannungsverläufen wählen. Die Darstellung kann als Zeitfunktion oder als Lissajous-Figur über der Funktion sin(x) erfolgen. In der Zeitdarstellung können Sie mit der linken Maustaste einen Meßstrahl zur Pegelbestimmung auslößen. In der Betriebsart "Dynamik" wird der Phasenwikel um 10 Grad je Sekunde verschoben. In einem zusätzlichen Applet-Fenster wir die Funktion sin(x) + 1/3 sin(3x) (Auswahl = 3) bei einer Phasenverschiebung von 210 Grad (Phase = 210) dargestellt. In diesem Fenster ist die Funktionalität auf das Ausmessen von von Pegelwerten beschränkt. Prof. Dr.-Ing. habil. B. Steinbach - Informatik / Softwaretechnologie und Programmierungstechnik - Institut für Informatik