dimanche 26 avril 2015

Die die aktuelle Größe zusätzlich in einem Label angezeigt wird

Hallo und Guten Tag!
ich bin ein absoluter Anfänger Student in Java :rtfm:, und ich habe ein Projekt über GUI JLabel machen muss. Mein Deutsch ist nicht so gut, so dass schwer für mich manchmal zu verstehen ist und meinen Lehrer hilft mir nicht.
Ich habe schon die Komponenten in einem LayoutGrid gemacht aber ich versehe nicht was ich beim Label machen soll und wie. Ich bedanke mich sehr für Hilfe :)
Meine Einsendeaufgabe ist:
Erweitern Sie die Anwendung aus diesem Studienheft, in der die Größe eines Textes über die beiden Schaltflächen verändert werden kann, so, dass die aktuelle Größe zusätzlich in einem Label angezeigt wird.
Ordnen Sie die Komponenten bitte außerdem in einem GridLayout mit zwei Spalten an. Welche Komponente wo erscheint, ist dabei Ihnen überlassen.
Bitte beachten Sie, dass Sie den Wert eines int-Typen nicht direkt in einem Label anzeigen lassen können. Sie müssen den Wert erst in den Typen String umwandeln – zum Beispiel mit Integer.toString(<intWert>).
Meinen Quelltext:
Java Code:

  1.  
  2. import java.awt.GridLayout;
  3.  
  4. import java.awt.Font;
  5. import java.awt.event.ActionEvent;
  6. import java.awt.event.ActionListener;
  7. import java.awt.event.WindowAdapter;
  8. import java.awt.event.WindowEvent;
  9.  
  10. import javax.swing.JButton;
  11. import javax.swing.JFrame;
  12. import javax.swing.JLabel;
  13. import javax.swing.JOptionPane;
  14.  
  15.  
  16. public class TextSpielereiGUI extends JFrame{
  17.  
  18. //die ID wurde automatisch mit Eclipse ergänzt
  19. private static final long serialVersionUID = 9101793356610287754L;
  20.  
  21. //ein Label und zwei Schaltflächen als Instanzvariablen
  22. private JLabel ausgabe;
  23. private JButton schaltflaecheGroesser, schaltflaecheKleiner;
  24. //The actual size to be displayed as Label
  25. private int schriftGroesse;
  26.  
  27.  
  28.  
  29. //eine innere Klasse für den WindowListener und den ActionListener
  30. //die Klasse ist von WindowAdapter abgeleitet und
  31. //implementiert die Schnittstelle ActionListener
  32. class MeinKompakterListener extends WindowAdapter implements ActionListener{
  33. //für das Öffnen des Fensters
  34. @Override
  35. public void windowOpened(WindowEvent e) {
  36. //für die Eingabe
  37. String eingabe;
  38. eingabe = JOptionPane.showInputDialog("Geben Sie einen Text ein");
  39. //den Text in das Label setzen
  40. ausgabe.setText(eingabe);
  41. //das Fenster neu "packen"
  42. pack();
  43. }
  44.  
  45. //für die Schaltflächen
  46. @Override
  47. public void actionPerformed(ActionEvent e) {
  48. //wurde auf Größer geklickt
  49. if (e.getActionCommand().equals("+"))
  50. //die Schriftgröße um 1 erhöhen
  51. schriftGroesse++;
  52. //wurde auf Kleiner geklickt
  53. if (e.getActionCommand().equals("-"))
  54. //die Schriftgröße um 1 verringern
  55. schriftGroesse--;
  56. //und neu setzen
  57. ausgabe.setFont(new Font("Arial", Font.PLAIN, schriftGroesse));
  58. //das Fenster neu "packen"
  59. pack();
  60. }
  61. }
  62.  
  63. //der Konstruktor
  64. //er erzeugt die Komponenten und setzt die Fenstereinstellungen
  65. public TextSpielereiGUI(String titel) {
  66. //den Konstruktor der Basisklasse aufrufen und den Fenstertitel übergeben
  67. super(titel);
  68. //die beiden Schaltflächen
  69. schaltflaecheGroesser = new JButton("+");
  70. schaltflaecheKleiner = new JButton("-");
  71. //ein leeres Label
  72. ausgabe = new JLabel();
  73.  
  74. //die Größe für die Schrift setzen
  75. schriftGroesse = 20;
  76. //die Schriftart im Label setzen
  77. ausgabe.setFont(new Font("Tahoma",Font.PLAIN, schriftGroesse));
  78. //Change from FlowLaout to GridLayout
  79. setLayout(new GridLayout (0,2,5,5));
  80. add(schaltflaecheGroesser);
  81. add(schaltflaecheKleiner);
  82. add(ausgabe);
  83. setSize (250,250);
  84. setLocationByPlatform(true);
  85.  
  86.  
  87. //den Listener verbinden
  88. MeinKompakterListener listener = new MeinKompakterListener();
  89. addWindowListener(listener);
  90. schaltflaecheGroesser.addActionListener(listener);
  91. schaltflaecheKleiner.addActionListener(listener);
  92.  
  93. //das Fenster packen
  94.  
  95. //die Standardaktion beim Schließen festlegen
  96. setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  97. //das Fenster anzeigen
  98. setVisible(true);
  99. }
  100. public static void main(String[] args) {
  101. new TextSpielereiGUI("Einsendeaufgabe 1");
  102. }
  103.  
  104. }


Die die aktuelle Größe zusätzlich in einem Label angezeigt wird

0 commentaires:

Enregistrer un commentaire