JformattedTextField, Dialog und weitere Kleinigkeiten .

Status
Nicht offen für weitere Antworten.
Ich mal wieder, bin inzwischen schon sehr viel weiter mit meinen Programm! Sind jetzt nur noch ein paar Kleinigkeiten.


JFormattedTextField:

Er übernimmt keine Kommazahlen, er schneidet hinter dem Komma alles weg. Kann ich dafür überhaupt das DecimalFormat benutzen? Aus der Dokumentaion werde ich nicht schlau.

Hohlzylinderbild:

Was und wohin schreibe ich das das Bild schliessen soll, wenn ich den Button "Zurück" betätige?
Wie gebe ich dem Bildfenster einen Titel?

class Hohlzylinderbe:
Wie gebe ich dem Dialogfenster eine Hintergrundfarbe?


Danke im vorraus für Eure Hilfe.

Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.text.*;

public class Hohlzylinder extends JFrame implements ActionListener
{
	private JFormattedTextField tfd1;
	private JFormattedTextField tfd2;
	private JFormattedTextField tfh;
	private double durchmesser1;
	private double durchmesser2;
	private double hoehe;
	

	
	public Hohlzylinder ()
	{
		// Fenstereigenschaften
		super ("gerader Hohlzylinder");
		setSize (800, 400);
		setLayout (new GridLayout (6, 1));
		
		// Panels
		JPanel titel = new JPanel();
		JPanel durchmesser1 = new JPanel();
		JPanel durchmesser2 = new JPanel();
		JPanel hoehe = new JPanel();
		JPanel berechnen = new JPanel();
		JPanel button = new JPanel();
		
		// Panelhintergrund
		titel.setBackground (Color.yellow);
		durchmesser1.setBackground (Color.cyan);
		durchmesser2.setBackground (Color.cyan);
		hoehe.setBackground (Color.cyan);
		berechnen.setBackground (Color.cyan);
		button.setBackground (Color.red);
		
		// Labels
		JLabel titela = new JLabel ("Stereometrie");
		JLabel durchmesser1a = new JLabel ("Durchmesser d_1:");
		JLabel durchmesser2a = new JLabel ("Durchmesser d_2:");
		JLabel hoehea = new JLabel ("Höhe h:");
		
		// Labeleigenschaften
		titela.setFont(new Font("SansSerif", Font.PLAIN,40));
		durchmesser1a.setFont (new Font("SansSerif", Font.PLAIN,20));
		durchmesser2a.setFont (new Font("SansSerif", Font.PLAIN,20));
		hoehea.setFont (new Font("SansSerif", Font.PLAIN,20));
		
		// Buttons
		JButton zurueck = new JButton ("Zurück");
		JButton beenden = new JButton ("Programm beenden");
		JButton berechnena = new JButton ("Berechnen");
		
		// Textfeld
		tfd1 = new JFormattedTextField (new DecimalFormat ());
		tfd2 = new JFormattedTextField (new DecimalFormat ());
		tfh = new JFormattedTextField (new DecimalFormat ());
		tfd1.setColumns (20);
		tfd2.setColumns (20);
		tfh.setColumns (20);
		
		// Belegung der Panels
		titel.add (titela);
		durchmesser1.add (durchmesser1a);
		durchmesser1.add (tfd1);
		durchmesser2.add (durchmesser2a);
		durchmesser2.add (tfd2);
		hoehe.add (hoehea);
		hoehe.add (tfh);
		berechnen.add (berechnena);
		button.add (zurueck);
		button.add (beenden);
		
		// Einfügen der Panels
		add (titel);
		add (durchmesser1);
		add (durchmesser2);
		add (hoehe);
		add (berechnen);
		add (button);
		
		// Sichtbarkeit des Fensters
		setVisible (true);
		
		// Einbinden der Buttons in den ActionListener
		zurueck.addActionListener (this);
		beenden.addActionListener (this);
		berechnena.addActionListener (this);
		tfd1.addActionListener (this);
		tfd2.addActionListener (this);
		tfh.addActionListener (this);
		
		Hohlzylinderbild();
	}
	
	public void Hohlzylinderbild ()
	{
		JFrame frame = new JFrame();
		frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
		ImageIcon bild = new ImageIcon (Hohlzylinderbild.class.getResource ("dix.jpg"));
		JLabel Pic = new JLabel (bild);
		frame.getContentPane().add(Pic,BorderLayout.CENTER);
		frame.setLocation (800, 0);
		frame.pack();
		frame.setVisible (true);
	}
	
	public void actionPerformed(final ActionEvent a)
	{	
	
		if (a.getActionCommand().equals("Zurück"))
		{
			Rund b = new Rund();
			setVisible (false);
		}
		
		if (a.getActionCommand().equals("Programm beenden"))
		{
			System.exit(0);
		}
		
		if (a.getActionCommand().equals ("Berechnen"))
		{
			durchmesser1 = Double.parseDouble (tfd1.getText());
			durchmesser2 = Double.parseDouble (tfd2.getText());
			hoehe = Double.parseDouble (tfh.getText());
			Hohlzylinderbe d = new Hohlzylinderbe (this, true, durchmesser1, durchmesser2, hoehe);
			d.setVisible (true);
			return;
		}
	}
}
	
class Hohlzylinderbe extends JDialog
{
	private double phi = 3.1416;
	private double A_O;
	private double A_M;
	private double V;
	private double durchmesser1;
	private double durchmesser2;
	private double hoehe;
	private JLabel label1;
	private JLabel label2;
	private JLabel label3;
	
	public Hohlzylinderbe (final Frame parent, final boolean modal,
	final double durchmesser1,
	final double durchmesser2,
	final double hoehe)
	{
		super (parent, "geraden Hohlzylinder berechnen", modal);
		this. durchmesser1 = durchmesser1;
		this. durchmesser2 = durchmesser2;
		this.hoehe = hoehe;
		
		label1 = new JLabel ("");
		label2 = new JLabel ("");
		label3 = new JLabel ("");
		
		add (label1, BorderLayout.NORTH);
		add (label2, BorderLayout.CENTER);
		add (label3, BorderLayout.SOUTH);
	
		setSize (300,200);
		setLocationRelativeTo (parent);
		berechnen();
	}
	
	private void berechnen()
	{
		A_M = phi * hoehe * (durchmesser1 + durchmesser2);
		A_O = (phi / 2) * (durchmesser2 + durchmesser1) * (2 * hoehe + (durchmesser1 - durchmesser2));
		V = (phi / 4) * hoehe * ((durchmesser2 * durchmesser2) + (durchmesser1 * durchmesser1)); 
		
		label1.setText (" Oberfläche: "+A_O);
		label2.setText (" Mantelfläche: "+A_M);
		label3.setText (" Volumen: "+V);
	}
}
 

dieta

Top Contributor
Zur Hintergrundfarbe des Dialogfensters:
VErsuch's mal mit this.setBackground(Color c) und this.getContentPane().setBackground(Color c).
Eine der Methoden sollte funzen.
 
Danke hat funktioniert, das Problem mit dem Fensternamen konnte ich auch lösen. Bleiben nur die Probleme mit den Kommazahlen und mit dem schliessen des Bildfensters beim betätigen von ""Zurück".

Das Textfeld schneidet mir immer alles noch dem Komma/Punkt weg und rechnet nur mit ganzen Zahlen. Ist für diese Anwendung das JFormattedTextfield geeignet?

Beim betätigen des Buttons "Zurück sollen sich beide Fenster "public Hohlzylinder" und "public void Hohlzylinderbild" schliessen. Wo muss ich das was einbinden. "public Hohlzylinder" schliesst ja schon.

Danke für eure Hilfe.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
F JFormattedTextField für kg und Währung AWT, Swing, JavaFX & SWT 6
S JFormattedTextField dezimal variabler Länge AWT, Swing, JavaFX & SWT 12
Ghostman1711 Java JFormattedTextfield MaskFormatter ohne Leerzeichen AWT, Swing, JavaFX & SWT 3
N Swing JFormattedTextField keine Werte nach Formatzuweisung AWT, Swing, JavaFX & SWT 0
M European Article Number (EAN) in JFormattedTextfield AWT, Swing, JavaFX & SWT 3
L JFormattedTextField AWT, Swing, JavaFX & SWT 3
B Swing JFormattedTextField AWT, Swing, JavaFX & SWT 4
Y JFormattedTextfield - Aktualisierung und Beschränkung AWT, Swing, JavaFX & SWT 4
V Swing Nullpointer Exception bei JFormattedTextField AWT, Swing, JavaFX & SWT 4
S Swing JFormattedTextField - bei nicht korrekter Eingabe Inhalt überschreiben AWT, Swing, JavaFX & SWT 5
S Swing JFormattedTextfield markiert nicht gesamten Inhalt AWT, Swing, JavaFX & SWT 4
C Swing Button in Textfeld (JFormattedTextField) AWT, Swing, JavaFX & SWT 7
A jformattedtextfield unsichtbar und wieder sichtbar machen AWT, Swing, JavaFX & SWT 13
C Swing JFormattedTextField + Eurobetrag AWT, Swing, JavaFX & SWT 2
E Problem mit MaskFormatter und JFormattedTextField AWT, Swing, JavaFX & SWT 3
A EventListener für JFormattedTextField AWT, Swing, JavaFX & SWT 6
B Swing Betrag mit Komma aus jformattedtextfield auslesen. AWT, Swing, JavaFX & SWT 2
E Swing JFormattedTextField Live Validierung AWT, Swing, JavaFX & SWT 4
C Swing Default Werte für JFormattedTextField und Eingaben zurücksetzen AWT, Swing, JavaFX & SWT 5
G JFormattedTextField und DefaultButton AWT, Swing, JavaFX & SWT 6
B Swing JFormattedTextField auf mehreren JPanels in einer JTabbedPane AWT, Swing, JavaFX & SWT 3
G JFormattedTextField values AWT, Swing, JavaFX & SWT 8
R JFormattedTextField AWT, Swing, JavaFX & SWT 8
D Eingabemaske im JFormattedTextField ändern AWT, Swing, JavaFX & SWT 3
D JFormattedTextfield um Grafik erweitern AWT, Swing, JavaFX & SWT 15
N JFormattedTextField erst Verlassen, wenn Eingabe korrekt AWT, Swing, JavaFX & SWT 6
G JFormattedTextField lässt sich nicht mehr leeren AWT, Swing, JavaFX & SWT 4
N PropertyChangeListener an JFormattedTextField AWT, Swing, JavaFX & SWT 7
D Problem mit JFormattedTextField AWT, Swing, JavaFX & SWT 6
A Problem mit JFormattedTextField auslesen AWT, Swing, JavaFX & SWT 11
S JFormattedTextField und maximal 3 Stellen. AWT, Swing, JavaFX & SWT 11
M JFormattedTextField und Null-Werte AWT, Swing, JavaFX & SWT 4
E Problem mit Validierende Eingabefeldern JFormattedTextField AWT, Swing, JavaFX & SWT 8
B JFormattedTextField mit DecimalFormat in ein Double AWT, Swing, JavaFX & SWT 11
C JFormattedTextField - nur bestimmte Zeichen zulassen AWT, Swing, JavaFX & SWT 3
H JFormattedTextField - Einen Preis eingeben lassen AWT, Swing, JavaFX & SWT 2
B Zeichen werden im JFormattedTextField überschrieben AWT, Swing, JavaFX & SWT 3
H JFormattedTextField AWT, Swing, JavaFX & SWT 4
W IP-Adresse mit JFormattedTextField AWT, Swing, JavaFX & SWT 5
F JFormattedTextField formatieren AWT, Swing, JavaFX & SWT 7
J [JFormattedTextField] Nur Zahlen eingebbar AWT, Swing, JavaFX & SWT 3
S [JFormattedTextField] Ja wie denn nun? AWT, Swing, JavaFX & SWT 2
G Datumseingabe mit JFormattedTextField AWT, Swing, JavaFX & SWT 4
B Wert bei JFormattedTextField automatisch aktualisieren AWT, Swing, JavaFX & SWT 2
H Frage zu JFormattedTextField AWT, Swing, JavaFX & SWT 2
G Problem mit JFormattedTextField AWT, Swing, JavaFX & SWT 3
M Datumseingabe in ein JFormattedTextfield AWT, Swing, JavaFX & SWT 2
F Problem mit JFormattedTextField AWT, Swing, JavaFX & SWT 4
A JFormattedTextField - vertical misalignment problems... AWT, Swing, JavaFX & SWT 12
MiHimbert Rückmeldung an den aufrufenden JAVAFX-Dialog AWT, Swing, JavaFX & SWT 1
H AWT Dialog Größe ändern - Schwarzer Inhalt beim groß ziehen AWT, Swing, JavaFX & SWT 1
L Swing Files abspeichern mit Save as Dialog Fenster AWT, Swing, JavaFX & SWT 5
N JavaFX Vor beenden der Anwendung durch klicken von X Dialog zeigen AWT, Swing, JavaFX & SWT 1
melaniemueller Confirmation Dialog erstellen AWT, Swing, JavaFX & SWT 18
C Swing Aufruf der Funktion (die ein Dialog anzeigt) über Symbol anzeigen lassen AWT, Swing, JavaFX & SWT 4
H Eigener Dialog mit Rückgabe -> Warten auf Button AWT, Swing, JavaFX & SWT 3
kodela Swing Problem mit Warten-Dialog AWT, Swing, JavaFX & SWT 16
ralfb1105 JavaFX Alert Confirmation Dialog aus einem Service Thread AWT, Swing, JavaFX & SWT 8
G JavaFX JavaFX-Dialog aus einer Nicht-JavaFX-Anwendung heraus AWT, Swing, JavaFX & SWT 1
C FileChooser Save-Dialog zeigt Files nicht an AWT, Swing, JavaFX & SWT 3
S AWT Java print dialog Problem AWT, Swing, JavaFX & SWT 0
E Swing Dialog modal aufrufen AWT, Swing, JavaFX & SWT 2
T JavaFX Dialog schließt ohne dass es schließen soll AWT, Swing, JavaFX & SWT 1
RalleYTN Modaler Dialog und JTree Node mit sehr... seeeeehr vielen Elementen AWT, Swing, JavaFX & SWT 6
T JOptionPane Dialog plus Rechnung ausgeben AWT, Swing, JavaFX & SWT 1
krgewb AWT JFrame soll sich wie Dialog verhalten AWT, Swing, JavaFX & SWT 9
J JavaFX Dialog - Style AWT, Swing, JavaFX & SWT 6
D Swing Dynamisches Dialog UI AWT, Swing, JavaFX & SWT 8
H JFileChooser Dateinamen vorgeben (Save Dialog) AWT, Swing, JavaFX & SWT 9
D Neues Dialog Mittig auf dem Bildschirm AWT, Swing, JavaFX & SWT 4
F 2D-Grafik Grafikproblem nach Aufruf von JColorChooser-Dialog AWT, Swing, JavaFX & SWT 6
M Java FX Innerhalb einem FXML-Dialog weiteren FXML-Dialog einblenden AWT, Swing, JavaFX & SWT 3
T SWT SWTBot Test: Dialog soll sich öffnen,wenn button gedrückt AWT, Swing, JavaFX & SWT 3
G Datei öffnen Dialog modifizieren AWT, Swing, JavaFX & SWT 13
W SWT Dialog richtig schließen? AWT, Swing, JavaFX & SWT 0
M Benutzer-Dialog ohne System.in/out AWT, Swing, JavaFX & SWT 2
P JOptionPane input und show Message Dialog AWT, Swing, JavaFX & SWT 5
F Dialog mit Titel, Text und Ok Button AWT, Swing, JavaFX & SWT 2
TheWhiteShadow SWT Dialog Titel setzen AWT, Swing, JavaFX & SWT 6
VfL_Freak Darstellungsproblem mit Dialog AWT, Swing, JavaFX & SWT 8
P Swing Dialog zeigt keinen Inhalt in Verbindung mit JFrame AWT, Swing, JavaFX & SWT 18
G Nebenläufiger Prozess mit Dialog AWT, Swing, JavaFX & SWT 2
C Swing Fortschrittsanzeige im Dialog ohne Fortschrittsbalken und Abbruchoption AWT, Swing, JavaFX & SWT 7
M Swing Elemente im Dialog neu "laden". AWT, Swing, JavaFX & SWT 6
VfL_Freak Swing KeyListener, um einen Dialog per ESC zu schließen AWT, Swing, JavaFX & SWT 6
R DnD in modalem Dialog AWT, Swing, JavaFX & SWT 4
I Dialog zum Speichern? AWT, Swing, JavaFX & SWT 16
M Dialog soll etwas an "Oberklasse" übergeben AWT, Swing, JavaFX & SWT 3
qwerqer Swing JDialog Darstellungsprobleme - Dialog lässt sich nicht schließen AWT, Swing, JavaFX & SWT 3
M Datei Speichern unter Dialog - SWT AWT, Swing, JavaFX & SWT 3
hdi Swing Bzgl JFrame & modaler Dialog AWT, Swing, JavaFX & SWT 6
N Modaler Dialog wird nicht angezeigt AWT, Swing, JavaFX & SWT 8
J SWT Dialog in Dialog automatisch öffnen AWT, Swing, JavaFX & SWT 19
H Confirm Dialog erweitern AWT, Swing, JavaFX & SWT 5
K Modaler Dialog aber trotzdem Aktualisierung des MainFrames AWT, Swing, JavaFX & SWT 6
B Gestaltung eines Optionen-Dialog AWT, Swing, JavaFX & SWT 16
P Swing Option zeitbeschränkt in modalem Dialog anbieten AWT, Swing, JavaFX & SWT 2
X Einem JFrame einen Dialog als Parent setzen. Möglich? AWT, Swing, JavaFX & SWT 4
L AWT Window, Dialog und verschiedene Betriebssysteme AWT, Swing, JavaFX & SWT 2
T SWT Window Builder Pro File Dialog anzeigen AWT, Swing, JavaFX & SWT 10

Ähnliche Java Themen

Neue Themen


Oben