Hilfe!!! JOptionPane

nasid

Mitglied
Hallo Leute,
ich habe ein Programm, was nach JOptionPane geändert werden muss, also statt Scanner muss JOptionPane im Programm sein, was neue Fenster öffnet. Ich bitte um Hilfe. Es ist sehr dringend und wichtig. Die Zeilen 15 bis 18 müssen in die Ausgabe rein.
 
Zuletzt bearbeitet:
Hier, hoffe das Hilft dir weiter!
Java:
String time = JOptionPane.showInputDialog(null, "Bitte geben sie eine Uhrzeit ein(hhmm):");
String temp = JOptionPane.showInputDialog(null, "Bitte geben sie eine Temperatur ein:");
if(time != null && temp != null){
/* Wenn der Benutzer eine Eingabe gemacht hat, sind die beiden Strings nicht Null */
}

Du musst deine Beiden Strings auf Null prüfen, weil wenn der Benutzer des JOptionPane schließt, bekommst du null zurück oder einen Leeren String!
 
Mach mal die Zeile 15 zu folgenes:

[java=15]
String time = JOptionPane.showInputDialog(null, "Bitte geben sie eine Uhrzeit ein(hhmm):");
if(time == null){
return;
}
[/code]

Also ab zeile 15, meine code einfügen und dan ausführen!
 
oh sorry habe mich in der Zeile vertahn! stelle noch mal den Code von deinem Ersten Post da und tauche vollgendes aus:
Java:
 String time = in.nextLine();
zu das hier
Java:
String time = JOptionPane.showInputDialog(null, "Bitte geben sie eine Uhrzeit ein(hhmm):");
if(time == null){
return;
}

Tausche sonst nix!

Also so meine ich:
Java:
import java.util.Scanner;
 
class Versuch{ 
 
private static int _stunde, _minute;
private static double _temp;
private static boolean _ampm;
 
public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    System.out.println("Bitte geben sie eine Uhrzeit ein(hhmm)");
   String time = JOptionPane.showInputDialog(null, "Bitte geben sie eine Uhrzeit ein(hhmm):");
   if(time == null){
   return;
    }
    System.out.println("Bitte geben sie eine Temperatur ein");
    String temp = in.nextLine();
    _stunde = toUStime(Integer.parseInt(time.substring(0,2)));
    _minute = Integer.parseInt(time.substring(2,4));
    _ampm = ampm(Integer.parseInt(time.substring(0,2)));
    _temp = toUStemp(Double.parseDouble(temp));
    ausgabe();
    }
    
    public static int toUStime(int stunde){
        if(stunde==12){
            return stunde;
        }
        else{
            return stunde%12;
        }
    }
    
    public static double toUStemp(double celcius) {
    return celcius * 9 / 5 + 32;
    }
    
    public static boolean ampm(int stunde){
        if(stunde>12&&stunde<24){
            return false;
        }
        else{
            return true;
        }
    }
    
    public static void ausgabe(){
        System.out.print("Zeit: "+_stunde+" : "+_minute);
        if(_ampm==true){
            System.out.println(" am");
        }
        else{
            System.out.println(" pm");
        }
            
        System.out.println("Temperatur: "+_temp);
    }
    
 
}
 
das geht auch nicht. Guck mal. alles ist richtig. Es muss JOptionPane drin sein. deine erste Hilfe war sehr gut, es war auch richtig. Aber in meinem ersten Posten von Zeile 15 bis 18, diese Sachen müssen in die Ausgabe verschoben werden. Scanner muss weg, es darf da nicht da bleiben.
 
Also über eine JOptinPane, kannst du eine Eingabe und eine Ausgabe machen!

Für die eingabe einfach so:
Java:
String time = JOptionPane.showInputDialog(null, "Bitte geben sie eine Uhrzeit ein(hhmm):");

für die ausgabe von dem String time:
Java:
JOptionPane.showMessageDialog(null, time);

Ich glaube ich verstehe deine Frage einfach nicht!
 
Schau mal hier:
Java:
import javax.swing.JOptionPane;

class Versuch {

	private static String time = null;
	private static String temp = null;

	public static void main(String[] args) {

		time = JOptionPane.showInputDialog(null, "Bitte geben sie eine Uhrzeit ein(hhmm):");
		temp = JOptionPane.showInputDialog(null, "Bitte geben sie eine Temperatur ein:");

		if (time != null && temp != null) {
			ausgabe();
		}

	}

	public static void eingabe() {

	}

	public static int toUStime(int stunde) {
		if (stunde == 12) {
			return stunde;
		} else {
			return stunde % 12;
		}
	}

	public static double toUStemp(double celcius) {
		return celcius * 9 / 5 + 32;
	}

	public static boolean ampm(int stunde) {
		if (stunde > 12 && stunde < 24) {
			return false;
		} else {
			return true;
		}
	}

	public static void ausgabe() {

		int _stunde = toUStime(Integer.parseInt(time.substring(0, 2)));
		int _minute = Integer.parseInt(time.substring(2, 4));
		boolean _ampm = ampm(Integer.parseInt(time.substring(0, 2)));
		double _temp = toUStemp(Double.parseDouble(temp));

		JOptionPane.showMessageDialog(null, "Zeit: " + _stunde + " : " + _minute);

		if (_ampm == true) {
			System.out.println(" am");
		} else {
			System.out.println(" pm");
		}

		JOptionPane.showMessageDialog(null, "Temperatur: " + _temp);
	}

}
 
he he ich werde verrückt. ich muss lachen. alles ist richtig, aber diesmal kann man am und pm nicht im neu geöffneten Fenster sehen. und bei der errechneten Temperatur fehlt dahinter auch Fahrenheit. He he
Glaub mir, seit Tagen quellt mich das so. Wenn man Laie ist, dann ist man auf Hilfe angewiesen
 
Hey das mit am und pm habe ich vermasselt! müsse jetzt Klappen aber Celcius hast du nicht mit geben he he he:
Java:
import javax.swing.JOptionPane;

class Versuch {

	private static String time = null;
	private static String temp = null;

	public static void main(String[] args) {

		time = JOptionPane.showInputDialog(null, "Bitte geben sie eine Uhrzeit ein(hhmm):");
		temp = JOptionPane.showInputDialog(null, "Bitte geben sie eine Temperatur ein:");

		if (time != null && temp != null) {
			ausgabe();
		}

	}

	public static void eingabe() {

	}

	public static int toUStime(int stunde) {
		if (stunde == 12) {
			return stunde;
		} else {
			return stunde % 12;
		}
	}

	public static double toUStemp(double celcius) {
		return celcius * 9 / 5 + 32;
	}

	public static boolean ampm(int stunde) {
		if (stunde > 12 && stunde < 24) {
			return false;
		} else {
			return true;
		}
	}

	public static void ausgabe() {

		int _stunde = toUStime(Integer.parseInt(time.substring(0, 2)));
		int _minute = Integer.parseInt(time.substring(2, 4));
		boolean _ampm = ampm(Integer.parseInt(time.substring(0, 2)));
		double _temp = toUStemp(Double.parseDouble(temp));

		String time = "Zeit: " + _stunde + " : " + _minute;

		if (_ampm == true) {
			time += " am";
		} else {
			time += " pm";
		}

		JOptionPane.showMessageDialog(null, time);
		JOptionPane.showMessageDialog(null, "Temperatur: " + _temp);
	}

}
 

Neue Themen


Zurück
Oben