• 18.07.2025, 22:43
  • Registrieren
  • Anmelden
  • Du bist nicht angemeldet.

 

Man_In_Blue

Moderator

Problem mit Java (Applet)

Sonntag, 13. Mai 2007, 22:17

Hi,

ich hab hier ein Prob beim Proggen unter Java... und zwar: wie lese ich den Inhalt eines Textfeldes aus und weise dem Wert eienr Variablen zu?

Geht sich konkret um eine Übrungsaufgabe für einen Spannungsrechner... der benutzer soll in Textfeldern Leistung udn Strom eingeben können und dann soll in einem Label/Textfeld die Spannung ausgegeben werden... das ganze soll eben UI und Logik getrennt haben... und mein Bisheriger Code schaut in etwa wie folgt aus:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import java.awt.*;
import java.applet.Applet;
import java.awt.event.*;

public class SpannungUI extends Applet 
implements ActionListener
{
      
private spannung S1 = new SpannungCalc();      
      
private Button ButtonRechne = new Button ("Rechne");

private TextField TextFieldStrom = new TextField (15);
private TextField TextFieldLeistung = new TextField (15);

private Label LabelSpannung = new Label ("Spannung");
private Label LabelStrom = new Label ("Strom");
private Label LabelLeistung = new Label ("Leistung");

public void init()
{
      this.add (LabelSpannung);
            
      this.add (LabelStrom);
            this.add (TextFieldStrom);
      
      this.add (LabelLeistung);
            this.add (TextFieldLeistung);
            
      this.add (ButtonRechne);
      
      ButtonRechne.addActionListener(this);
}

public void actionPerformed( ActionEvent e)
{
      
}


}


das ist die UI... dort fehlt eben noch das auslesen der Textfelder and das aufrufen meiner Classe...

die Klasse schaut so aus:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class Spannung {
      

      private float fSpannung;
      

      public void Calc(float fLeistung, float fStrom)
      {      
      fSpannung = fLeistung / fStrom;
      }
      
      public int getSpannung( )
      { 
      return fSpannung;
      }



könnt ihr mir da weiter helfen? *zu Yogi schiel*

Man In Blue
A sinking ship is still a ship!

crushcoder

God

Re: Problem mit Java (Applet)

Sonntag, 13. Mai 2007, 23:07

auslesen:
String eingegebenerText = TextFieldLeistung.getText();

ins label schreiben:
LabelSpannung.setText(eingegebenerText);

und bitte: variablennamen immer klein schreiben.
Gott hat die Welt ja nur in sieben Tagen erschaffen können, weil es keine installierte Basis gab.

Man_In_Blue

Moderator

Re: Problem mit Java (Applet)

Sonntag, 13. Mai 2007, 23:40

hmmm...

war da nicht irgendwas mit umwandeln von Int in String oder son Schwachsin?

und warum klein schreiben? Nach ungarischer Notation schreibt man am anfang immer groß ;)

Man In Blue
A sinking ship is still a ship!

crushcoder

God

Re: Problem mit Java (Applet)

Sonntag, 13. Mai 2007, 23:57

du programmierst aber java, und die sun code conventions wollen kleinschreibung bei variablennamen. :P

aus nem TextField (warum eigentlich den alten awt-kram und kein JTextField?) bekommt man einen String.
Das TextField kann ja erstmal nicht wissen was eingegeben werden soll, bzw wurde.
Wenn man die Eingaben beschränken will gibts noch das JFormattedTextField.
Und afaik gabs da auch was fertiges für zahlen.

bleibt man beim TextField musst du den String natürlich noch umwandeln in ein objekt mit dem du rechnen kannst.
Float.parseFloat(String) sollte da helfen.
Gott hat die Welt ja nur in sieben Tagen erschaffen können, weil es keine installierte Basis gab.

Y0Gi

God

Re: Problem mit Java (Applet)

Montag, 14. Mai 2007, 13:55

Kleinschreibung am Anfang, aber mixedCase ist OK. Wird sonst etwas unleserlich und underscore_separated ist bei Java meines Wissens sehr wenig verbreitet.

Nach ungarischer Notation schreibt man am Anfang *nicht* groß, sondern klein. Weit bedeutender ist, dass man eine Kurzform des Dateityps als Präfix sowie bestimmte Bezeichner (Min, Max, Dest) als Suffix verwendet.

Was die generellen Fragen angeht ("Wie lese ich ein Textfeld aus?") lassen sich diese sehr leicht mit einem Blick in die Java-API (in diesem Fall für das AWT-Paket) beantworten.

Interessant könnte für dich mein OnChangeTextField sein, das schon bei der Eingabe reagiert und Events feuert. Zwar basiert es auf Swing-Widgets, möglicherweise lässt es sich aber leicht zu AWT portieren; ActionEvent und ActionListener aus java.awt.event werden ohnehin verwendet. Ansonsten halt direkt den Umrechner mit Swing erstellen, das hat ohnehin mehr Möglichkeiten.

Weiterhin habe ich noch zwei Umrechner im Angebot, bei denen du dir Anregungen holen kannst.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Y0Gi« (22. Januar 2013, 04:07)

crushcoder

God

Re: Problem mit Java (Applet)

Montag, 14. Mai 2007, 15:00

Zitat von »Y0Gi«

Kleinschreibung am Anfang, aber mixedCase ist OK. Wird sonst etwas unleserlich und underscore_separated ist bei Java meines Wissens sehr wenig verbreitet.

türlich, das war auch gemeint (siehe: "eingegebenerText").

nur konstanten (final static) werden komplett uppercase und mit underscore zwischen einzelworten geschrieben.
Gott hat die Welt ja nur in sieben Tagen erschaffen können, weil es keine installierte Basis gab.

Y0Gi

God

Re: Problem mit Java (Applet)

Montag, 14. Mai 2007, 16:33

Klar, Konstanten hätte ich explizit erwähnen können.

Die ungarische Notation ist übrigens für C sinnvoll, für Java wird aber davon abgeraten.