Hex in Dez

FraeuleinBauer

Mitglied
Hallo, ich bräuchte eure Hilfe. Ich wollte ein Programm erstellen mit dem ich Hexadezimalezahlen in Dezimalzahlen umwandeln kann. Daweil bin ich auch schon ziemlich weit gekommen ,aber er lässt mich keine Buchstaben einlesen. Damit meine ich ,wenn ich Zahlen eingebe funktioniert es perfekt ,aber sobald Buchstaben eingegeben werden springt er ab. Ich hab ein kleineres Programm geschrieben wo alles funktioniert ,aber ich muss mit JFrames arbeiten.
Also bitte bitte könnte mir jemand Helfen ?
(Bin neu bei der Seite und kenne mich null aus)
Java:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Versuch2 extends JFrame implements ActionListener, WindowListener {
    
 private static final long serialVersionUID = 1 L;
 private Panel eingabe1;
 private Panel ausgabe;
 private TextField einTF1;
 private TextField ausTF2;
 private Label ein1;
 private Label aus;
 private JButton convert;
 
 public static void main(String[] args) {
  Versuch2 r = new Versuch2();
  r.setTitle("Hexadezimal zu Dezimal");
  r.setSize(450, 400);
  r.setVisible(true);
 }
 
 public Versuch2() {
  eingabe1 = new Panel();
  ausgabe = new Panel();
  einTF1 = new TextField();
  ausTF2 = new TextField();
  ein1 = new Label("Hexadezimalzahl");
  aus = new Label("Dezimalzahl");
  eingabe1.setLayout(new GridLayout(1, 2));
  eingabe1.add(ein1);
  eingabe1.add(einTF1);
  ausgabe.setLayout(new GridLayout(1, 2));
  ausgabe.add(aus);
  ausgabe.add(ausTF2);
  convert = new JButton("Convert");
  convert.addActionListener(this);
  this.setLayout(new GridLayout(3, 1));
  this.add(eingabe1);
  this.add(ausgabe);
  this.getContentPane().add(convert);
  convert.addActionListener(this);
  this.addWindowListener(this);
 }
 
 public void actionPerformed(ActionEvent e) {
  if (e.getSource() == convert) {
   int hexa = Integer.parseInt(einTF1.getText());
   String strHexNumber = String.valueOf(hexa);
   int decimalNumber = Integer.parseInt(strHexNumber, 16);
   ausTF2.setText("" + decimalNumber);
  }
 }
 
 public void windowClosing(WindowEvent e) {
  this.dispose();
 }
 
 public void windowClosed(WindowEvent e) {
  System.exit(0);
 }
 
 @Override
 public void windowActivated(WindowEvent arg0) {}
 @Override
 public void windowDeactivated(WindowEvent arg0) {}
 @Override
 public void windowDeiconified(WindowEvent arg0) {}
 @Override
 public void windowIconified(WindowEvent arg0) {}
 @Override
 public void windowOpened(WindowEvent arg0) {}
}
 
Zuletzt bearbeitet von einem Moderator:

Thallius

Top Contributor
Code:
int hexa = Integer.parseInt(einTF1.getText());
String strHexNumber = String.valueOf(hexa);

Diese beiden Zeilen sind irgendwie überflüssig und bei der ersten wird er eine Exception werfen...
 

FraeuleinBauer

Mitglied
Ohne der ersten Zeile liest er das eingegeben nicht ein
Und mit der zweiten Zeile habe ich versucht die erste Zeile in einen String umzuwandeln

Ich bräuchte eigentlich nur einen Befehl der das Int ersetzt und es gleich als String einliest
 

Flown

Administrator
Mitarbeiter
Wäre nett wenn du nächstes mal deinen Code in Code-Tag posten würdest: [code=java]//JAVA CODE HERE [/code]
 

FraeuleinBauer

Mitglied

Neue Themen


Oben