Guest User

Untitled

a guest
Aug 22nd, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.44 KB | None | 0 0
  1. package exampleTabs;
  2.  
  3. import java.awt.BorderLayout;
  4. import java.awt.Choice;
  5. import java.awt.Color;
  6. import java.awt.Label;
  7. import java.awt.TextField;
  8. import java.awt.event.ActionEvent;
  9. import java.awt.event.ActionListener;
  10. import java.awt.event.ItemEvent;
  11. import java.awt.event.ItemListener;
  12. import java.sql.Connection;
  13. import java.sql.DriverManager;
  14. import java.sql.SQLException;
  15. import java.sql.Statement;
  16.  
  17. import javax.swing.JButton;
  18. import javax.swing.JFrame;
  19. import javax.swing.JPanel;
  20.  
  21. import miniproject_CallDB.Connectie;
  22.  
  23. public class PanelTab2 extends JFrame implements ItemListener, ActionListener {
  24. //PanelTab2 bevat oefening 10
  25.  
  26. public PanelTab2(){}
  27.  
  28.  
  29. private JPanel middenPaneel, bovenPaneel;
  30.  
  31. private Choice chc_select;
  32. private Label lbl_studentA, lbl_lastName, lbl_firstName, lbl_geb, lbl_stageCode, lbl_persoon, lbl_record;
  33. private TextField txtF_studentT, txtF_lastT, txtF_firstT, txtF_gebT, txtF_stageT;
  34.  
  35. private JButton btn_Update;
  36.  
  37. private Color bovenC = new Color(204, 251, 93);
  38. private Color middenC = new Color(135, 247, 23);
  39. private Color tekstM = new Color(0, 0, 255);
  40. private Color tekstVak = new Color(128, 128, 128);
  41.  
  42. Object[][] data;
  43.  
  44. private String studentS, lastS, firstS, gebS, stageS;
  45.  
  46. public void maakGui(){
  47. //Opmaak van de GUI
  48.  
  49.  
  50. //nieuwe connectie openen
  51. Connectie myDB = new Connectie("opgavek", "studenten");
  52.  
  53. //controleren op connectie
  54. if ( myDB.maakConnectie() ){
  55. System.out.println("Connectie met de database gelukt");
  56. }
  57.  
  58. data = myDB.haalGegevensOp();
  59.  
  60.  
  61. //BOVEN Paneel
  62. bovenPaneel = new JPanel();
  63. bovenPaneel.setBackground(bovenC);
  64.  
  65. lbl_persoon = new Label("zoek student");
  66. chc_select = new Choice();
  67. chc_select.addItemListener(this);
  68. int teller = myDB.haalGegevensOp().length;
  69.  
  70. for (int i = 0; i < teller; i++) {
  71. chc_select.add(Integer.toString(i + 1));
  72. }
  73.  
  74.  
  75. bovenPaneel.add(lbl_persoon);
  76. bovenPaneel.add(chc_select);
  77.  
  78. add(bovenPaneel, BorderLayout.NORTH);
  79.  
  80.  
  81. //MIDDEN Paneel
  82. middenPaneel = new JPanel();
  83. middenPaneel.setBackground(middenC);
  84.  
  85. lbl_studentA = new Label("Student Nummer");
  86. lbl_lastName = new Label("Last Name");
  87. lbl_firstName = new Label("First Name");
  88. lbl_geb = new Label("Geboorte Datum");
  89. lbl_stageCode = new Label("Stage Code");
  90. lbl_record = new Label("opgehaalde record");
  91.  
  92. txtF_studentT = new TextField(data[chc_select.getSelectedIndex()][0].toString());
  93. txtF_lastT = new TextField(data[chc_select.getSelectedIndex()][1].toString());
  94. txtF_firstT = new TextField(data[chc_select.getSelectedIndex()][2].toString());
  95. txtF_gebT = new TextField(data[chc_select.getSelectedIndex()][3].toString());
  96. txtF_stageT = new TextField(data[chc_select.getSelectedIndex()][4].toString());
  97.  
  98.  
  99. middenPaneel.add(lbl_studentA);
  100. middenPaneel.add(lbl_lastName);
  101. middenPaneel.add(lbl_firstName);
  102. middenPaneel.add(lbl_geb);
  103. middenPaneel.add(lbl_stageCode);
  104. middenPaneel.add(txtF_studentT);
  105. middenPaneel.add(txtF_lastT);
  106. middenPaneel.add(txtF_firstT);
  107. middenPaneel.add(txtF_gebT);
  108. middenPaneel.add(txtF_stageT);
  109. middenPaneel.add(lbl_record);
  110.  
  111. add(middenPaneel, BorderLayout.CENTER);
  112.  
  113. // Layout midden paneel
  114. middenPaneel.setLayout(null);
  115. lbl_studentA.setBounds(80, 50, 100, 20);
  116. lbl_lastName.setBounds(80, 90, 100, 20);
  117. lbl_firstName.setBounds(80, 130, 100, 20);
  118. lbl_geb.setBounds(80, 170, 100, 20);
  119. lbl_stageCode.setBounds(80, 210, 100, 20);
  120.  
  121. lbl_record.setBounds(5, 3, 300, 20);
  122.  
  123. txtF_studentT.setBounds(500, 50, 200, 20);
  124. txtF_lastT.setBounds(500, 90, 200, 20);
  125. txtF_firstT.setBounds(500, 130, 200, 20);
  126. txtF_gebT.setBounds(500, 170, 200, 20);
  127. txtF_stageT.setBounds(500, 210, 200, 20);
  128.  
  129. lbl_studentA.setForeground(tekstM);
  130. lbl_lastName.setForeground(tekstM);
  131. lbl_firstName.setForeground(tekstM);
  132. lbl_geb.setForeground(tekstM);
  133. lbl_stageCode.setForeground(tekstM);
  134. txtF_studentT.setForeground(tekstM);
  135. txtF_lastT.setForeground(tekstM);
  136. txtF_firstT.setForeground(tekstM);
  137. txtF_gebT.setForeground(tekstM);
  138. txtF_stageT.setForeground(tekstM);
  139.  
  140. txtF_studentT.setBackground(tekstVak);
  141.  
  142. //ONDER Paneel
  143. btn_Update = new JButton("Update");
  144. btn_Update.addActionListener(this);
  145. add(btn_Update, BorderLayout.SOUTH);
  146. setSize(800, 350);
  147. setLocation(100, 100);
  148. setVisible(true);
  149. myDB.sluitConnectie();
  150.  
  151.  
  152. }
  153.  
  154. public void updateGeg(){
  155. //Gegevens aanpassen
  156.  
  157. //String uit TextField halen
  158. studentS = txtF_studentT.getText();
  159. lastS = txtF_lastT.getText();
  160. firstS = txtF_firstT.getText();
  161. gebS = txtF_gebT.getText();
  162. stageS = txtF_stageT.getText();
  163.  
  164.  
  165. try{
  166. // Eigen connectie omdat met de Connectie klasse geen statement kan worden uitgevoerd
  167.  
  168. Class.forName("com.mysql.jdbc.Driver");
  169. Connection con = DriverManager.getConnection("jdbc:mysql://localhost/opgavek","root","");
  170. try{
  171. Statement st = con.createStatement();
  172. st.executeUpdate("UPDATE studenten set StudentNaam = '" + lastS + "', StudentVoorNaam = '" + firstS + "', StudentGebDatum = '" + gebS + "', StageCode = '" + stageS + "' WHERE StudentNummer = " + studentS);
  173. System.out.println("Gegevens aangepast");
  174. con.close();
  175. }
  176.  
  177. catch (SQLException s){
  178. System.out.println("SQL statement is niet uitgevoerd");
  179. }
  180. }
  181.  
  182. catch (Exception e){
  183. e.printStackTrace();
  184. }
  185.  
  186. data[chc_select.getSelectedIndex()][1] = lastS;
  187. data[chc_select.getSelectedIndex()][2] = firstS;
  188. data[chc_select.getSelectedIndex()][3] = gebS;
  189. data[chc_select.getSelectedIndex()][4] = stageS;
  190.  
  191. }
  192.  
  193. public static void main(String[] args) {
  194. //Main programma
  195.  
  196. PanelTab2 start = new PanelTab2();
  197. start.maakGui();
  198.  
  199. }
  200.  
  201.  
  202.  
  203. @Override
  204. public void actionPerformed(ActionEvent e) {
  205.  
  206. //Wordt er op de button geklikt?
  207. if (e.getSource() == btn_Update){
  208. updateGeg();
  209. }
  210.  
  211. }
  212.  
  213.  
  214. @Override
  215. public void itemStateChanged(ItemEvent e) {
  216.  
  217. //Switchen tussen studenten in de choice
  218. if (e.getSource() == chc_select)
  219. {
  220. int nummer = chc_select.getSelectedIndex();
  221. txtF_studentT.setText(data[nummer][0].toString());
  222. txtF_lastT.setText(data[nummer][1].toString());
  223. txtF_firstT.setText(data[nummer][2].toString());
  224. txtF_gebT.setText(data[nummer][3].toString());
  225. txtF_stageT.setText(data[nummer][4].toString());
  226. }
  227.  
  228. }
  229.  
  230. }
Add Comment
Please, Sign In to add comment