Advertisement
Guest User

Untitled

a guest
Jun 30th, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 27.78 KB | None | 0 0
  1. import java.awt.*;
  2. import java.awt.event.*;
  3. import javax.swing.*;
  4. import javax.swing.event.*;
  5. import javax.swing.tree.*;
  6. import java.sql.Connection;
  7. import java.sql.DriverManager;
  8. import java.sql.ResultSet;
  9. import java.sql.ResultSetMetaData;
  10. import java.util.*;
  11. import java.sql.SQLException;
  12. import java.sql.Statement;
  13.  
  14. /**
  15.   * import java.sql.* deckt eigentlich alles ab, kann aber zu l�ngerer Ladezeit f�hren. java.util.* ist noch zu ersetzen durch java.util.Vector;
  16.   * MySQL/OBDC Treiber oder MySQL/J in Classpath(Fenster-> Konfiguration) bei Laptop Installation
  17.   * JDK 7, da Lizenzprobleme
  18.   * Ideen-Sammlung:
  19.   * Noch eine Farbliche Hinterlegung der Aufgaben?
  20.   * Progressbar f�r schnellen �berblick?
  21.   * JTree?
  22.   * Simon Maiwald bei Fachlehrer Fr. Ebert Pr�fung 04.07.2017 11:30
  23.   */
  24.  
  25. public class ToDoListeGUI extends JFrame {
  26.   // Anfang Attribute
  27.   private JLabel jlbDatenbank = new JLabel();
  28.   private JTextField jtfTODOLISTE = new JTextField();
  29.   private JLabel jlbSQLAnweisung = new JLabel();
  30.   private JTextArea jtaAnweisung = new JTextArea("");
  31.     private JScrollPane jtaAnweisungScrollPane = new JScrollPane(jtaAnweisung);
  32.   private JButton jbAnweisungLoeschen = new JButton();
  33.   private JButton jbAnweisungAusfuehren = new JButton();
  34.   private JTable jtbListe = new JTable(5, 1);
  35.     private JScrollPane jtbListeScrollPane = new JScrollPane(jtbListe);
  36.   private JButton jbMontag = new JButton();
  37.   private JButton jbMittwoch = new JButton();
  38.   private JButton jbDonnerstag = new JButton();
  39.   private JButton jbFreitag = new JButton();
  40.   private JButton jbSamstag = new JButton();
  41.   private JButton jbSonntag = new JButton();
  42.   private JButton jbDienstag = new JButton();
  43.   private JLabel jlbTag = new JLabel();
  44.   private JLabel jlbAufgabe = new JLabel();
  45.   private JLabel jlbAufwand = new JLabel();
  46.   private JLabel jlbErledigt = new JLabel();
  47.   private JTextField jtfTag = new JTextField();
  48.   private JTextField jtfAufgabe = new JTextField();
  49.   private JTextField jtfAufwand = new JTextField();
  50.   private JTextField jtfErledigt = new JTextField();
  51.   private JButton jbAufgabeHinzufuegen = new JButton();
  52.   private JButton jbErledigtesLoeschen = new JButton();
  53.   private JButton jbAufgabenLoeschen = new JButton();
  54.   private JButton jbSortierenNachAufwand = new JButton();
  55.   private JButton jbSortierenNachErledigt = new JButton();
  56.   Connection Verbindung;
  57.   Statement Anweisung;    
  58.  
  59.   // Ende Attribute
  60.  
  61.  
  62.   public ToDoListeGUI() {
  63.     // Frame-Initialisierung
  64.     super();
  65.     setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
  66.     int frameWidth = 469;
  67.     int frameHeight = 538;
  68.     setSize(frameWidth, frameHeight);
  69.     Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
  70.     int x = (d.width - getSize().width) / 2;
  71.     int y = (d.height - getSize().height) / 2;
  72.     setLocation(x, y);
  73.     setTitle("ToDo-Liste von Simon Maiwald");
  74.     setResizable(false);
  75.     Container cp = getContentPane();
  76.     cp.setLayout(null);
  77.     // Anfang Komponenten
  78.    
  79.     jlbDatenbank.setBounds(8, 456, 155, 33);
  80.     jlbDatenbank.setText("Datenbank:");
  81.     cp.add(jlbDatenbank);
  82.     jtfTODOLISTE.setBounds(176, 456, 153, 33);
  83.     jtfTODOLISTE.setText("TODOLISTE");
  84.     cp.add(jtfTODOLISTE);
  85.     jlbSQLAnweisung.setBounds(8, 216, 147, 33);
  86.     jlbSQLAnweisung.setText("SQL-Anweisung");
  87.     cp.add(jlbSQLAnweisung);
  88.     jtaAnweisungScrollPane.setBounds(8, 248, 449, 41);
  89.     cp.add(jtaAnweisungScrollPane);
  90.     jbAnweisungLoeschen.setBounds(328, 48, 129, 33);
  91.     jbAnweisungLoeschen.setText("Anweisung L�schen");
  92.     jbAnweisungLoeschen.setMargin(new Insets(2, 2, 2, 2));
  93.     jbAnweisungLoeschen.addActionListener(new ActionListener() {
  94.       public void actionPerformed(ActionEvent evt) {
  95.         jbAnweisungLoeschen_ActionPerformed(evt);
  96.       }
  97.     });
  98.     cp.add(jbAnweisungLoeschen);
  99.     jbAnweisungAusfuehren.setBounds(328, 8, 129, 33);
  100.     jbAnweisungAusfuehren.setText("Anweisung Ausf�hren");
  101.     jbAnweisungAusfuehren.setMargin(new Insets(2, 2, 2, 2));
  102.     jbAnweisungAusfuehren.addActionListener(new ActionListener() {
  103.       public void actionPerformed(ActionEvent evt) {
  104.         jbAnweisungAusfuehren_ActionPerformed(evt);
  105.       }
  106.     });
  107.     cp.add(jbAnweisungAusfuehren);
  108.     jtbListeScrollPane.setBounds(8, 296, 449, 153);
  109.     jtbListe.getColumnModel().getColumn(0).setHeaderValue("Title 1");
  110.     jtbListeScrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
  111.     cp.add(jtbListeScrollPane);
  112.     jbMontag.setBounds(200, 144, 57, 17);
  113.     jbMontag.setText("Montag");
  114.     jbMontag.setMargin(new Insets(2, 2, 2, 2));
  115.     jbMontag.addActionListener(new ActionListener() {
  116.       public void actionPerformed(ActionEvent evt) {
  117.         jbMontag_ActionPerformed(evt);
  118.       }
  119.     });
  120.     cp.add(jbMontag);
  121.     jbMittwoch.setBounds(200, 168, 57, 17);
  122.     jbMittwoch.setText("Mittwoch");
  123.     jbMittwoch.setMargin(new Insets(2, 2, 2, 2));
  124.     jbMittwoch.addActionListener(new ActionListener() {
  125.       public void actionPerformed(ActionEvent evt) {
  126.         jbMittwoch_ActionPerformed(evt);
  127.       }
  128.     });
  129.     cp.add(jbMittwoch);
  130.     jbDonnerstag.setBounds(264, 168, 57, 17);
  131.     jbDonnerstag.setText("Donnerstag");
  132.     jbDonnerstag.setMargin(new Insets(2, 2, 2, 2));
  133.     jbDonnerstag.addActionListener(new ActionListener() {
  134.       public void actionPerformed(ActionEvent evt) {
  135.         jbDonnerstag_ActionPerformed(evt);
  136.       }
  137.     });
  138.     cp.add(jbDonnerstag);
  139.     jbFreitag.setBounds(200, 192, 57, 17);
  140.     jbFreitag.setText("Freitag");
  141.     jbFreitag.setMargin(new Insets(2, 2, 2, 2));
  142.     jbFreitag.addActionListener(new ActionListener() {
  143.       public void actionPerformed(ActionEvent evt) {
  144.         jbFreitag_ActionPerformed(evt);
  145.       }
  146.     });
  147.     cp.add(jbFreitag);
  148.     jbSamstag.setBounds(264, 192, 57, 17);
  149.     jbSamstag.setText("Samstag");
  150.     jbSamstag.setMargin(new Insets(2, 2, 2, 2));
  151.     jbSamstag.addActionListener(new ActionListener() {
  152.       public void actionPerformed(ActionEvent evt) {
  153.         jbSamstag_ActionPerformed(evt);
  154.       }
  155.     });
  156.     cp.add(jbSamstag);
  157.     jbSonntag.setBounds(232, 216, 57, 17);
  158.     jbSonntag.setText("Sonntag");
  159.     jbSonntag.setMargin(new Insets(2, 2, 2, 2));
  160.     jbSonntag.addActionListener(new ActionListener() {
  161.       public void actionPerformed(ActionEvent evt) {
  162.         jbSonntag_ActionPerformed(evt);
  163.       }
  164.     });
  165.     cp.add(jbSonntag);
  166.     jbDienstag.setBounds(264, 144, 57, 17);
  167.     jbDienstag.setText("Dienstag");
  168.     jbDienstag.setMargin(new Insets(2, 2, 2, 2));
  169.     jbDienstag.addActionListener(new ActionListener() {
  170.       public void actionPerformed(ActionEvent evt) {
  171.         jbDienstag_ActionPerformed(evt);
  172.       }
  173.     });
  174.     cp.add(jbDienstag);
  175.     jlbTag.setBounds(8, 8, 67, 25);
  176.     jlbTag.setText("Tag:");
  177.     cp.add(jlbTag);
  178.     jlbAufgabe.setBounds(8, 40, 67, 25);
  179.     jlbAufgabe.setText("Aufgabe:");
  180.     cp.add(jlbAufgabe);
  181.     jlbAufwand.setBounds(8, 72, 67, 25);
  182.     jlbAufwand.setText("Aufwand:");
  183.     cp.add(jlbAufwand);
  184.     jlbErledigt.setBounds(8, 104, 67, 25);
  185.     jlbErledigt.setText("Erledigt:");
  186.     cp.add(jlbErledigt);
  187.     jtfTag.setBounds(88, 8, 97, 25);
  188.     jtfTag.addMouseListener(new MouseAdapter() {
  189.       public void mouseClicked(MouseEvent evt) {
  190.         jtfTag_MouseClicked(evt);
  191.       }
  192.     });
  193.     cp.add(jtfTag);
  194.     jtfAufgabe.setBounds(88, 40, 97, 25);
  195.     jtfAufgabe.addMouseListener(new MouseAdapter() {
  196.       public void mouseClicked(MouseEvent evt) {
  197.         jtfAufgabe_MouseClicked(evt);
  198.       }
  199.     });
  200.     cp.add(jtfAufgabe);
  201.     jtfAufwand.setBounds(88, 72, 97, 25);
  202.     jtfAufwand.addMouseListener(new MouseAdapter() {
  203.       public void mouseClicked(MouseEvent evt) {
  204.         jtfAufwand_MouseClicked(evt);
  205.       }
  206.     });
  207.     cp.add(jtfAufwand);
  208.     jtfErledigt.setBounds(88, 104, 97, 25);
  209.     jtfErledigt.addMouseListener(new MouseAdapter() {
  210.       public void mouseClicked(MouseEvent evt) {
  211.         jtfErledigt_MouseClicked(evt);
  212.       }
  213.     });
  214.     cp.add(jtfErledigt);
  215.     jbAufgabeHinzufuegen.setBounds(192, 88, 265, 49);
  216.     jbAufgabeHinzufuegen.setText("Aufgabe in Datenbank �bernehmen");
  217.     jbAufgabeHinzufuegen.setMargin(new Insets(2, 2, 2, 2));
  218.     jbAufgabeHinzufuegen.addActionListener(new ActionListener() {
  219.       public void actionPerformed(ActionEvent evt) {
  220.         jbAufgabeHinzufuegen_ActionPerformed(evt);
  221.       }
  222.     });
  223.     cp.add(jbAufgabeHinzufuegen);
  224.     jbErledigtesLoeschen.setBounds(192, 8, 129, 33);
  225.     jbErledigtesLoeschen.setText("Erledigtes L�schen");
  226.     jbErledigtesLoeschen.setMargin(new Insets(2, 2, 2, 2));
  227.     jbErledigtesLoeschen.addActionListener(new ActionListener() {
  228.       public void actionPerformed(ActionEvent evt) {
  229.         jbErledigtesLoeschen_ActionPerformed(evt);
  230.       }
  231.     });
  232.     jbErledigtesLoeschen.setBackground(new Color(0xC0C0C0));
  233.     cp.add(jbErledigtesLoeschen);
  234.     jbAufgabenLoeschen.setBounds(192, 48, 129, 33);
  235.     jbAufgabenLoeschen.setText("Aufgaben des Tages L�schen");
  236.     jbAufgabenLoeschen.setMargin(new Insets(2, 2, 2, 2));
  237.     jbAufgabenLoeschen.addActionListener(new ActionListener() {
  238.       public void actionPerformed(ActionEvent evt) {
  239.         jbAufgabenLoeschen_ActionPerformed(evt);
  240.       }
  241.     });
  242.     cp.add(jbAufgabenLoeschen);
  243.     jbSortierenNachAufwand.setBounds(336, 144, 121, 41);
  244.     jbSortierenNachAufwand.setText("Sortieren nach Aufwand");
  245.     jbSortierenNachAufwand.setMargin(new Insets(2, 2, 2, 2));
  246.     jbSortierenNachAufwand.addActionListener(new ActionListener() {
  247.       public void actionPerformed(ActionEvent evt) {
  248.         jbSortierenNachAufwand_ActionPerformed(evt);
  249.       }
  250.     });
  251.     jbSortierenNachAufwand.setBackground(new Color(0xC0C0C0));
  252.     cp.add(jbSortierenNachAufwand);
  253.     jbSortierenNachErledigt.setBounds(336, 200, 121, 41);
  254.     jbSortierenNachErledigt.setText("Sortieren nach Erledigt");
  255.     jbSortierenNachErledigt.setMargin(new Insets(2, 2, 2, 2));
  256.     jbSortierenNachErledigt.addActionListener(new ActionListener() {
  257.       public void actionPerformed(ActionEvent evt) {
  258.         jbSortierenNachErledigt_ActionPerformed(evt);
  259.       }
  260.     });
  261.     cp.add(jbSortierenNachErledigt);
  262.     cp.setBackground(Color.GRAY);
  263.     // Ende Komponenten
  264.    
  265.     setVisible(true);
  266.   } // end of public ToDoListeGUI
  267.  
  268.   // Anfang Methoden
  269.  
  270.   public static void main(String[] args) {
  271.     new ToDoListeGUI();
  272.   } // end of main
  273.  
  274.   public void jbAnweisungLoeschen_ActionPerformed(ActionEvent evt) {
  275.     jtaAnweisung.setText("");
  276.  
  277.   }
  278.  
  279.   public void jbAnweisungAusfuehren_ActionPerformed(ActionEvent evt) {
  280.     ResultSet Ergebnis;                                              //Erste Herleitung von ResultSet
  281.     ResultSetMetaData MetaDaten;                                     //Definition MetaDaten
  282.     Vector Attribute;
  283.     Vector Datensaetze;
  284.  
  285.     try {
  286.       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  287.       Verbindung = DriverManager.getConnection("jdbc:odbc:" + jtfTODOLISTE.getText());
  288.       Anweisung = Verbindung.createStatement();
  289.     }
  290.     catch (Exception e) {
  291.       String s = breche_um("Datenbank " + jtfTODOLISTE.getText() + " konnte nicht ge�ffnet werden." +
  292.                  "\n" + e.getMessage());
  293.       JOptionPane.showMessageDialog(this, s, "Datenbank-Fehler", JOptionPane.ERROR_MESSAGE);
  294.       return;
  295.     }
  296.  
  297.     try {
  298.       // Abfrage ausf�hren
  299.       String Abfrage = jtaAnweisung.getText();
  300.       Ergebnis = Anweisung.executeQuery(Abfrage);
  301.  
  302.       // Attribute lesen
  303.       MetaDaten = Ergebnis.getMetaData();
  304.       int Spalten = MetaDaten.getColumnCount();
  305.       Attribute = new Vector();
  306.       for(int i = 0; i < Spalten; i++)
  307.         Attribute.addElement(MetaDaten.getColumnLabel(i+1));
  308.  
  309.       // Datens�tze lesen
  310.       Datensaetze = new Vector();
  311.       while (Ergebnis.next()) {
  312.         Vector neuerDatensatz = new Vector();
  313.         for (int i = 1; i <= Spalten; i++)
  314.           neuerDatensatz.addElement(Ergebnis.getObject(i));
  315.         Datensaetze.addElement(neuerDatensatz);
  316.       }
  317.  
  318.       // Datensaetze anzeigen
  319.       jtbListe = new JTable(Datensaetze, Attribute);
  320.       jtbListeScrollPane.setViewportView(jtbListe);
  321.       Ergebnis.close();
  322.     }
  323.     catch (SQLException e) {
  324.       while (e != null) {
  325.         String s = e.getMessage();
  326.         s = breche_um(s);
  327.         JOptionPane.showMessageDialog(this, s, "SQL-Fehler", JOptionPane.ERROR_MESSAGE);
  328.         e = e.getNextException();
  329.   } // end of jbAnweisungAusfuehren_ActionPerformed
  330.    }
  331.      }
  332.   public String breche_um(String s) {
  333.     if (s == null) return "";
  334.     int i = 50;
  335.     while (i < s.length()) {
  336.       while (i < s.length() && s.charAt(i) != ' ')
  337.         i++;                                      // +1
  338.       s = s.substring(0, i) + "\n" + s.substring(i, s.length());
  339.       i = i + 50;
  340.     }
  341.     return s;
  342. }
  343.   public void jbMontag_ActionPerformed(ActionEvent evt) {
  344.     jtfTag.setText("Montag");    
  345.     jtaAnweisung.setText("SELECT * FROM Montag;");
  346.     ResultSet Ergebnis;
  347.     ResultSetMetaData MetaDaten;
  348.     Vector Attribute;
  349.     Vector Datensaetze;
  350.  
  351.     try {
  352.       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  353.       Verbindung = DriverManager.getConnection("jdbc:odbc:" + jtfTODOLISTE.getText());
  354.       Anweisung = Verbindung.createStatement();
  355.     }
  356.     catch (Exception e) {
  357.       String s = breche_um("Datenbank " + jtfTODOLISTE.getText() + " konnte nicht ge�ffnet werden." +
  358.                  "\n" + e.getMessage());
  359.       JOptionPane.showMessageDialog(this, s, "Datenbank-Fehler", JOptionPane.ERROR_MESSAGE);
  360.       return;
  361.     }
  362.  
  363.     try {
  364.       // Abfrage ausf�hren
  365.       String Abfrage = jtaAnweisung.getText();
  366.       Ergebnis = Anweisung.executeQuery(Abfrage);
  367.  
  368.       // Attribute lesen
  369.       MetaDaten = Ergebnis.getMetaData();
  370.       int Spalten = MetaDaten.getColumnCount();
  371.       Attribute = new Vector();
  372.       for(int i = 0; i < Spalten; i++)
  373.         Attribute.addElement(MetaDaten.getColumnLabel(i+1));
  374.  
  375.       // Datens�tze lesen
  376.       Datensaetze = new Vector();
  377.       while (Ergebnis.next()) {
  378.         Vector neuerDatensatz = new Vector();
  379.         for (int i = 1; i <= Spalten; i++)
  380.           neuerDatensatz.addElement(Ergebnis.getObject(i));
  381.         Datensaetze.addElement(neuerDatensatz);
  382.       }
  383.  
  384.       // Datensaetze anzeigen
  385.       jtbListe = new JTable(Datensaetze, Attribute);
  386.       jtbListeScrollPane.setViewportView(jtbListe);
  387.       Ergebnis.close();
  388.     }
  389.     catch (SQLException e) {
  390.       while (e != null) {
  391.         String s = e.getMessage();
  392.         s = breche_um(s);
  393.         JOptionPane.showMessageDialog(this, s, "SQL-Fehler", JOptionPane.ERROR_MESSAGE);
  394.         e = e.getNextException();
  395.         }
  396.     }
  397.    
  398.   }
  399.  
  400.   public void jbMittwoch_ActionPerformed(ActionEvent evt) {
  401.     jtfTag.setText("Mittwoch");    
  402.     jtaAnweisung.setText("SELECT * FROM Mittwoch;");
  403.     ResultSet Ergebnis;
  404.     ResultSetMetaData MetaDaten;
  405.     Vector Attribute;
  406.     Vector Datensaetze;
  407.  
  408.     try {
  409.       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  410.       Verbindung = DriverManager.getConnection("jdbc:odbc:" + jtfTODOLISTE.getText());
  411.       Anweisung = Verbindung.createStatement();
  412.     }
  413.     catch (Exception e) {
  414.       String s = breche_um("Datenbank " + jtfTODOLISTE.getText() + " konnte nicht ge�ffnet werden." +
  415.                  "\n" + e.getMessage());
  416.       JOptionPane.showMessageDialog(this, s, "Datenbank-Fehler", JOptionPane.ERROR_MESSAGE);
  417.       return;
  418.     }
  419.  
  420.     try {
  421.       // Abfrage ausf�hren
  422.       String Abfrage = jtaAnweisung.getText();
  423.       Ergebnis = Anweisung.executeQuery(Abfrage);
  424.  
  425.       // Attribute lesen
  426.       MetaDaten = Ergebnis.getMetaData();
  427.       int Spalten = MetaDaten.getColumnCount();
  428.       Attribute = new Vector();
  429.       for(int i = 0; i < Spalten; i++)
  430.         Attribute.addElement(MetaDaten.getColumnLabel(i+1));
  431.  
  432.       // Datens�tze lesen
  433.       Datensaetze = new Vector();
  434.       while (Ergebnis.next()) {
  435.         Vector neuerDatensatz = new Vector();
  436.         for (int i = 1; i <= Spalten; i++)
  437.           neuerDatensatz.addElement(Ergebnis.getObject(i));
  438.         Datensaetze.addElement(neuerDatensatz);
  439.       }
  440.  
  441.       // Datensaetze anzeigen
  442.       jtbListe = new JTable(Datensaetze, Attribute);
  443.       jtbListeScrollPane.setViewportView(jtbListe);
  444.       Ergebnis.close();
  445.     }
  446.     catch (SQLException e) {
  447.       while (e != null) {
  448.         String s = e.getMessage();
  449.         s = breche_um(s);
  450.         JOptionPane.showMessageDialog(this, s, "SQL-Fehler", JOptionPane.ERROR_MESSAGE);
  451.         e = e.getNextException();
  452.         }
  453.     }
  454.    
  455.  
  456.   } // end of jbMittwoch_ActionPerformed
  457.  
  458.   public void jbDonnerstag_ActionPerformed(ActionEvent evt) {
  459.     jtfTag.setText("Donnerstag");    
  460.     jtaAnweisung.setText("SELECT * FROM Donnerstag;");
  461.     ResultSet Ergebnis;
  462.     ResultSetMetaData MetaDaten;
  463.     Vector Attribute;
  464.     Vector Datensaetze;
  465.  
  466.     try {
  467.       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  468.       Verbindung = DriverManager.getConnection("jdbc:odbc:" + jtfTODOLISTE.getText());
  469.       Anweisung = Verbindung.createStatement();
  470.     }
  471.     catch (Exception e) {
  472.       String s = breche_um("Datenbank " + jtfTODOLISTE.getText() + " konnte nicht ge�ffnet werden." +
  473.                  "\n" + e.getMessage());
  474.       JOptionPane.showMessageDialog(this, s, "Datenbank-Fehler", JOptionPane.ERROR_MESSAGE);
  475.       return;
  476.     }
  477.  
  478.     try {
  479.       // Abfrage ausf�hren
  480.       String Abfrage = jtaAnweisung.getText();
  481.       Ergebnis = Anweisung.executeQuery(Abfrage);
  482.  
  483.       // Attribute lesen
  484.       MetaDaten = Ergebnis.getMetaData();
  485.       int Spalten = MetaDaten.getColumnCount();
  486.       Attribute = new Vector();
  487.       for(int i = 0; i < Spalten; i++)
  488.         Attribute.addElement(MetaDaten.getColumnLabel(i+1));
  489.  
  490.       // Datens�tze lesen
  491.       Datensaetze = new Vector();
  492.       while (Ergebnis.next()) {
  493.         Vector neuerDatensatz = new Vector();
  494.         for (int i = 1; i <= Spalten; i++)
  495.           neuerDatensatz.addElement(Ergebnis.getObject(i));
  496.         Datensaetze.addElement(neuerDatensatz);
  497.       }
  498.  
  499.       // Datensaetze anzeigen
  500.       jtbListe = new JTable(Datensaetze, Attribute);
  501.       jtbListeScrollPane.setViewportView(jtbListe);
  502.       Ergebnis.close();
  503.     }
  504.     catch (SQLException e) {
  505.       while (e != null) {
  506.         String s = e.getMessage();
  507.         s = breche_um(s);
  508.         JOptionPane.showMessageDialog(this, s, "SQL-Fehler", JOptionPane.ERROR_MESSAGE);
  509.         e = e.getNextException();
  510.         }
  511.     }
  512.    
  513.   } // end of jbDonnerstag_ActionPerformed
  514.  
  515.   public void jbFreitag_ActionPerformed(ActionEvent evt) {
  516.     jtfTag.setText("Freitag");    
  517.     jtaAnweisung.setText("SELECT * FROM Freitag;");
  518.     ResultSet Ergebnis;
  519.     ResultSetMetaData MetaDaten;
  520.     Vector Attribute;
  521.     Vector Datensaetze;
  522.  
  523.     try {
  524.       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  525.       Verbindung = DriverManager.getConnection("jdbc:odbc:" + jtfTODOLISTE.getText());
  526.       Anweisung = Verbindung.createStatement();
  527.     }
  528.     catch (Exception e) {
  529.       String s = breche_um("Datenbank " + jtfTODOLISTE.getText() + " konnte nicht ge�ffnet werden." +
  530.                  "\n" + e.getMessage());
  531.       JOptionPane.showMessageDialog(this, s, "Datenbank-Fehler", JOptionPane.ERROR_MESSAGE);
  532.       return;
  533.     }
  534.  
  535.     try {
  536.       // Abfrage ausf�hren
  537.       String Abfrage = jtaAnweisung.getText();
  538.       Ergebnis = Anweisung.executeQuery(Abfrage);
  539.  
  540.       // Attribute lesen
  541.       MetaDaten = Ergebnis.getMetaData();
  542.       int Spalten = MetaDaten.getColumnCount();
  543.       Attribute = new Vector();
  544.       for(int i = 0; i < Spalten; i++)
  545.         Attribute.addElement(MetaDaten.getColumnLabel(i+1));
  546.  
  547.       // Datens�tze lesen
  548.       Datensaetze = new Vector();
  549.       while (Ergebnis.next()) {
  550.         Vector neuerDatensatz = new Vector();
  551.         for (int i = 1; i <= Spalten; i++)
  552.           neuerDatensatz.addElement(Ergebnis.getObject(i));
  553.         Datensaetze.addElement(neuerDatensatz);
  554.       }
  555.  
  556.       // Datensaetze anzeigen
  557.       jtbListe = new JTable(Datensaetze, Attribute);
  558.       jtbListeScrollPane.setViewportView(jtbListe);
  559.       Ergebnis.close();
  560.     }
  561.     catch (SQLException e) {
  562.       while (e != null) {
  563.         String s = e.getMessage();
  564.         s = breche_um(s);
  565.         JOptionPane.showMessageDialog(this, s, "SQL-Fehler", JOptionPane.ERROR_MESSAGE);
  566.         e = e.getNextException();
  567.         }
  568.     }
  569.    
  570.   } // end of jbFreitag_ActionPerformed
  571.  
  572.   public void jbSamstag_ActionPerformed(ActionEvent evt) {
  573.     jtfTag.setText("Samstag");    
  574.     jtaAnweisung.setText("SELECT * FROM Samstag;");
  575.     ResultSet Ergebnis;
  576.     ResultSetMetaData MetaDaten;
  577.     Vector Attribute;
  578.     Vector Datensaetze;
  579.  
  580.     try {
  581.       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  582.       Verbindung = DriverManager.getConnection("jdbc:odbc:" + jtfTODOLISTE.getText());
  583.       Anweisung = Verbindung.createStatement();
  584.     }
  585.     catch (Exception e) {
  586.       String s = breche_um("Datenbank " + jtfTODOLISTE.getText() + " konnte nicht ge�ffnet werden." +
  587.                  "\n" + e.getMessage());
  588.       JOptionPane.showMessageDialog(this, s, "Datenbank-Fehler", JOptionPane.ERROR_MESSAGE);
  589.       return;
  590.     }
  591.  
  592.     try {
  593.       // Abfrage ausf�hren
  594.       String Abfrage = jtaAnweisung.getText();
  595.       Ergebnis = Anweisung.executeQuery(Abfrage);
  596.  
  597.       // Attribute lesen
  598.       MetaDaten = Ergebnis.getMetaData();
  599.       int Spalten = MetaDaten.getColumnCount();
  600.       Attribute = new Vector();
  601.       for(int i = 0; i < Spalten; i++)
  602.         Attribute.addElement(MetaDaten.getColumnLabel(i+1));
  603.  
  604.       // Datens�tze lesen
  605.       Datensaetze = new Vector();
  606.       while (Ergebnis.next()) {
  607.         Vector neuerDatensatz = new Vector();
  608.         for (int i = 1; i <= Spalten; i++)
  609.           neuerDatensatz.addElement(Ergebnis.getObject(i));
  610.         Datensaetze.addElement(neuerDatensatz);
  611.       }
  612.  
  613.       // Datensaetze anzeigen
  614.       jtbListe = new JTable(Datensaetze, Attribute);
  615.       jtbListeScrollPane.setViewportView(jtbListe);
  616.       Ergebnis.close();
  617.     }
  618.     catch (SQLException e) {
  619.       while (e != null) {
  620.         String s = e.getMessage();
  621.         s = breche_um(s);
  622.         JOptionPane.showMessageDialog(this, s, "SQL-Fehler", JOptionPane.ERROR_MESSAGE);
  623.         e = e.getNextException();
  624.         }
  625.     }
  626.    
  627.   } // end of jbSamstag_ActionPerformed
  628.  
  629.   public void jbSonntag_ActionPerformed(ActionEvent evt) {
  630.     jtfTag.setText("Sonntag");    
  631.     jtaAnweisung.setText("SELECT * FROM Sonntag;");
  632.     ResultSet Ergebnis;
  633.     ResultSetMetaData MetaDaten;
  634.     Vector Attribute;
  635.     Vector Datensaetze;
  636.  
  637.     try {
  638.       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  639.       Verbindung = DriverManager.getConnection("jdbc:odbc:" + jtfTODOLISTE.getText());
  640.       Anweisung = Verbindung.createStatement();
  641.     }
  642.     catch (Exception e) {
  643.       String s = breche_um("Datenbank " + jtfTODOLISTE.getText() + " konnte nicht ge�ffnet werden." +
  644.                  "\n" + e.getMessage());
  645.       JOptionPane.showMessageDialog(this, s, "Datenbank-Fehler", JOptionPane.ERROR_MESSAGE);
  646.       return;
  647.     }
  648.  
  649.     try {
  650.       // Abfrage ausf�hren
  651.       String Abfrage = jtaAnweisung.getText();
  652.       Ergebnis = Anweisung.executeQuery(Abfrage);
  653.  
  654.       // Attribute lesen
  655.       MetaDaten = Ergebnis.getMetaData();
  656.       int Spalten = MetaDaten.getColumnCount();
  657.       Attribute = new Vector();
  658.       for(int i = 0; i < Spalten; i++)
  659.         Attribute.addElement(MetaDaten.getColumnLabel(i+1));
  660.  
  661.       // Datens�tze lesen
  662.       Datensaetze = new Vector();
  663.       while (Ergebnis.next()) {
  664.         Vector neuerDatensatz = new Vector();
  665.         for (int i = 1; i <= Spalten; i++)
  666.           neuerDatensatz.addElement(Ergebnis.getObject(i));
  667.         Datensaetze.addElement(neuerDatensatz);
  668.       }
  669.  
  670.       // Datensaetze anzeigen
  671.       jtbListe = new JTable(Datensaetze, Attribute);
  672.       jtbListeScrollPane.setViewportView(jtbListe);
  673.       Ergebnis.close();
  674.     }
  675.     catch (SQLException e) {
  676.       while (e != null) {
  677.         String s = e.getMessage();
  678.         s = breche_um(s);
  679.         JOptionPane.showMessageDialog(this, s, "SQL-Fehler", JOptionPane.ERROR_MESSAGE);
  680.         e = e.getNextException();
  681.         }
  682.     }
  683.    
  684.   } // end of jbSonntag_ActionPerformed
  685.  
  686.   public void jbDienstag_ActionPerformed(ActionEvent evt) {
  687.     jtfTag.setText("Dienstag");    
  688.     jtaAnweisung.setText("SELECT * FROM Dienstag;");
  689.     ResultSet Ergebnis;
  690.     ResultSetMetaData MetaDaten;
  691.     Vector Attribute;
  692.     Vector Datensaetze;
  693.  
  694.     try {
  695.       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  696.       Verbindung = DriverManager.getConnection("jdbc:odbc:" + jtfTODOLISTE.getText());
  697.       Anweisung = Verbindung.createStatement();
  698.     }
  699.     catch (Exception e) {
  700.       String s = breche_um("Datenbank " + jtfTODOLISTE.getText() + " konnte nicht ge�ffnet werden." +
  701.                  "\n" + e.getMessage());
  702.       JOptionPane.showMessageDialog(this, s, "Datenbank-Fehler", JOptionPane.ERROR_MESSAGE);
  703.       return;
  704.     }
  705.  
  706.     try {
  707.       // Abfrage ausf�hren
  708.       String Abfrage = jtaAnweisung.getText();
  709.       Ergebnis = Anweisung.executeQuery(Abfrage);
  710.  
  711.       // Attribute lesen
  712.       MetaDaten = Ergebnis.getMetaData();
  713.       int Spalten = MetaDaten.getColumnCount();
  714.       Attribute = new Vector();
  715.       for(int i = 0; i < Spalten; i++)
  716.         Attribute.addElement(MetaDaten.getColumnLabel(i+1));
  717.  
  718.       // Datens�tze lesen
  719.       Datensaetze = new Vector();
  720.       while (Ergebnis.next()) {
  721.         Vector neuerDatensatz = new Vector();
  722.         for (int i = 1; i <= Spalten; i++)
  723.           neuerDatensatz.addElement(Ergebnis.getObject(i));
  724.         Datensaetze.addElement(neuerDatensatz);
  725.       }
  726.  
  727.       // Datensaetze anzeigen
  728.       jtbListe = new JTable(Datensaetze, Attribute);
  729.       jtbListeScrollPane.setViewportView(jtbListe);
  730.       Ergebnis.close();
  731.     }
  732.     catch (SQLException e) {
  733.       while (e != null) {
  734.         String s = e.getMessage();
  735.         s = breche_um(s);
  736.         JOptionPane.showMessageDialog(this, s, "SQL-Fehler", JOptionPane.ERROR_MESSAGE);
  737.         e = e.getNextException();
  738.         }
  739.     }
  740.    
  741.   } // end of jbDienstag_ActionPerformed
  742.  
  743.   public void jbAufgabeHinzufuegen_ActionPerformed(ActionEvent evt) {
  744.     jtaAnweisung.setText("INSERT " + jtfTag.getText() + "(Aufgabe, Aufwand, Erledigt) VALUES('"+jtfAufgabe.getText()+"'," +jtfAufwand.getText()+", '"+jtfErledigt.getText()+"');");
  745.  
  746.   } // end of jbAufgabeHinzufuegen_ActionPerformed
  747.  
  748.   public void jbErledigtesLoeschen_ActionPerformed(ActionEvent evt) {
  749.     jtaAnweisung.setText("DELETE FROM " + jtfTag.getText() + " WHERE Erledigt = 'Ja';");
  750.  
  751.   } // end of jbErledigtesLoeschen_ActionPerformed
  752.  
  753.   public void jbAufgabenLoeschen_ActionPerformed(ActionEvent evt) {
  754.     jtaAnweisung.setText("DELETE FROM " + jtfTag.getText() + ";");
  755.  
  756.   } // end of jbAufgabenLoeschen_ActionPerformed
  757.  
  758.   public void jtfAufwand_MouseClicked(MouseEvent evt) {
  759.     jtfAufwand.setText("");
  760.  
  761.   } // end of jtfAufwand_MouseClicked
  762.  
  763.   public void jtfErledigt_MouseClicked(MouseEvent evt) {
  764.     jtfErledigt.setText("");
  765.  
  766.   } // end of jtfErledigt_MouseClicked
  767.  
  768.   public void jtfAufgabe_MouseClicked(MouseEvent evt) {
  769.     jtfAufgabe.setText("");
  770.  
  771.   } // end of jtfAufgabe_MouseClicked
  772.  
  773.   public void jtfTag_MouseClicked(MouseEvent evt) {
  774.     jtfTag.setText("");
  775.  
  776.   } // end of jtfTag_MouseClicked
  777.  
  778.   public void jbSortierenNachAufwand_ActionPerformed(ActionEvent evt) {
  779.     jtaAnweisung.setText("SELECT * FROM " + jtfTag.getText() + " ORDER BY Aufwand DESC;");
  780.  
  781.   } // end of jbSortierenNachAufwand_ActionPerformed
  782.  
  783.   public void jbSortierenNachErledigt_ActionPerformed(ActionEvent evt) {
  784.     jtaAnweisung.setText("SELECT * FROM " + jtfTag.getText() + " ORDER BY Erledigt DESC;");
  785.  
  786.   } // end of jbSortierenNachErledigt_ActionPerformed
  787.  
  788.   // Ende Methoden
  789.  // end of class ToDoListeGUI
  790.  }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement