Permalänk

Hjälp med avbryta dialog.

Tja. Jag är rånybörjare med java så, don't judge.
Så här ser min kod ut.

import javax.swing.*;

public class Timlon {
public static void main( String[] arg) {
String t = JOptionPane.showInputDialog("Ange antalet arbetstimmar");
String l = JOptionPane.showInputDialog("Ange timlön");
double timmar = Double.parseDouble(t);
double lon = Double.parseDouble(l);

if (timmar>=40.5){
double ot = (timmar-40);
double not = (ot*0.5);
double ol = (not*lon);
double orl = (lon*timmar);
double vl = (orl+ol);
String veckolon = String.format("Veckolönen är %.2f", vl);/
JOptionPane.showMessageDialog(null, veckolon);
}

else{//om timmarna är 40 eller mindre så veckolönen lon*timmar
double vl = (timmar*lon);
String veckolon = String.format("Veckolönen är %.2f", vl);
JOptionPane.showMessageDialog(null, veckolon);
}

}
}

Dold text

Problemet är att jag behöver göra så programmet avbryts utan resultat när man trycker på avbryt. Det enda som händer nu är att den går vidare till nästa dialogruta..

Don't be too harsh..

Tack

Permalänk
Medlem

System.exit(1337);

Permalänk
Medlem
Skrivet av whokilledbob:

Tja. Jag är rånybörjare med java så, don't judge.
Så här ser min kod ut.

import javax.swing.*;

public class Timlon {
public static void main( String[] arg) {
String t = JOptionPane.showInputDialog("Ange antalet arbetstimmar");
String l = JOptionPane.showInputDialog("Ange timlön");
double timmar = Double.parseDouble(t);
double lon = Double.parseDouble(l);

if (timmar>=40.5){
double ot = (timmar-40);
double not = (ot*0.5);
double ol = (not*lon);
double orl = (lon*timmar);
double vl = (orl+ol);
String veckolon = String.format("Veckolönen är %.2f", vl);/
JOptionPane.showMessageDialog(null, veckolon);
}

else{//om timmarna är 40 eller mindre så veckolönen lon*timmar
double vl = (timmar*lon);
String veckolon = String.format("Veckolönen är %.2f", vl);
JOptionPane.showMessageDialog(null, veckolon);
}

}
}

Dold text

Problemet är att jag behöver göra så programmet avbryts utan resultat när man trycker på avbryt. Det enda som händer nu är att den går vidare till nästa dialogruta..

Don't be too harsh..

Tack

Jag antar att du menar när man trycker "Avbryt" istllet för "Ok" i input dialogerna som poppar upp?
Om värdet som returneras från inputdialogen är null så har användaren tryckt på "Avbryt".
I alla andra fall så har användaren tryckt på "Ok".

Visa signatur

ηλί, ηλί, λαμά σαβαχθανί!?

Permalänk
Medlem
Skrivet av whokilledbob:

Tja. Jag är rånybörjare med java så, don't judge.
Så här ser min kod ut.

import javax.swing.*;

public class Timlon {
public static void main( String[] arg) {
String t = JOptionPane.showInputDialog("Ange antalet arbetstimmar");
String l = JOptionPane.showInputDialog("Ange timlön");
double timmar = Double.parseDouble(t);
double lon = Double.parseDouble(l);

if (timmar>=40.5){
double ot = (timmar-40);
double not = (ot*0.5);
double ol = (not*lon);
double orl = (lon*timmar);
double vl = (orl+ol);
String veckolon = String.format("Veckolönen är %.2f", vl);/
JOptionPane.showMessageDialog(null, veckolon);
}

else{//om timmarna är 40 eller mindre så veckolönen lon*timmar
double vl = (timmar*lon);
String veckolon = String.format("Veckolönen är %.2f", vl);
JOptionPane.showMessageDialog(null, veckolon);
}

}
}

Dold text

Problemet är att jag behöver göra så programmet avbryts utan resultat när man trycker på avbryt. Det enda som händer nu är att den går vidare till nästa dialogruta..

Don't be too harsh..

Tack

Jag vet inte om det är ett krav att du använder javas dialogrutor för detta problem, för annars kan du ju konstruera egna JFrames med JButtons till vilka du låter en eventlyssnare (implementerar ActionListener) hantera knappfunktionerna. Som gn1p nämnde tidigare kan du i så fall invokera en metod kopplad till din "Avbryt"-knapp som endast utför System.exit(0), även om det är en ful lösning. På denna nivå antar jag att det inte gör något, men helst vill du avsluta maintråden innan programmet stängs av.