ZULETZT ANGESEHEN
Die Inhalte der Webseite werden bald hinzugefügt! ×
Die Aufgabe der heutigen Stunde ist der GUI SMSRechner!
Aber Vorsicht, diese Aufgabe ist anders als alle bisherigen! Statt das wir einen Code programmieren, welcher
in der Konsole angezeigt wird, programmieren wir jetzt unsere eigene "Konsole". Wenn du dir die
GUI Einführung noch nicht angesehen hast, empfehle ich dir sie durchzulesen, damit du ein groben Überblick über die verschiedenen
Unterschiede zwischen GUI und Konsole erhälst. Diese sind sehr wichtig für die Bearbeitung der Aufgabe!
Die Aufgabenstellung lautet:
X
Lösungsprozess der Aufgabe:
/**
*
* Das fertige Programm des GUI SMS Rechners
*
* @version 1.0 vom 11.07.2025
* @MeinInfoKurs.github.io
*/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class SMSRechner extends JFrame {
// Anfang Attribute
private JLabel lSMSRechner = new JLabel();
private JNumberField nfAnzahl = new JNumberField();
private JNumberField nfKosten = new JNumberField();
private JButton bBerechnen = new JButton();
private JLabel lAnzahl = new JLabel();
private JLabel lKosten = new JLabel();
private JLabel lCent = new JLabel();
// Ende Attribute
public SMSRechner() {
// Frame-Initialisierung
super();
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
int frameWidth = 295;
int frameHeight = 298;
setSize(frameWidth, frameHeight);
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
int x = (d.width - getSize().width) / 2;
int y = (d.height - getSize().height) / 2;
setLocation(x, y);
setTitle("SMSRechner");
setResizable(false);
Container cp = getContentPane();
cp.setLayout(null);
// Anfang Komponenten
lSMSRechner.setBounds(77, 36, 110, 20);
lSMSRechner.setText("SMS-Rechner");
lSMSRechner.setFont(new Font("Arial", Font.BOLD, 12));
cp.add(lSMSRechner);
nfAnzahl.setBounds(97, 88, 75, 20);
nfAnzahl.setText("");
cp.add(nfAnzahl);
nfKosten.setBounds(95, 137, 75, 20);
nfKosten.setText("");
cp.add(nfKosten);
bBerechnen.setBounds(94, 184, 75, 25);
bBerechnen.setText("Berechnen");
bBerechnen.setMargin(new Insets(2, 2, 2, 2));
bBerechnen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
bBerechnen_ActionPerformed(evt);
}
});
cp.add(bBerechnen);
lAnzahl.setBounds(25, 90, 54, 20);
lAnzahl.setText("Anzahl");
cp.add(lAnzahl);
lKosten.setBounds(20, 138, 54, 20);
lKosten.setText("Kosten");
cp.add(lKosten);
lCent.setBounds(182, 136, 62, 20);
lCent.setText("Cent");
cp.add(lCent);
// Ende Komponenten
setVisible(true);
} // end of public SMSRechner
// Anfang Methoden
public static void main(String[] args) {
new SMSRechner();
} // end of main
public void bBerechnen_ActionPerformed(ActionEvent evt) {
// TODO hier Quelltext einfuegen
int FreieSMS = 25;
int AnzahlSMS;
double Kosten;
AnzahlSMS = nfAnzahl.getInt();
if (AnzahlSMS <= FreieSMS) {
Kosten = 0;
} else {
Kosten = (AnzahlSMS - FreieSMS) * 5.9;
} // end of if-else
nfKosten.setDouble(Kosten, 2);
} // end of bBerechnen_ActionPerformed
// Ende Methoden
} // end of class SMSRechner
In der Aufgabenstellung wird gefordert, dass wir folgende Funktionen in unseren Code implementieren:
- X
- X
- X
- X
- X
X
X
X