Advertisement
Guest User

telefonearduinoejavafx

a guest
Jun 13th, 2018
360
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 34.72 KB | None | 0 0
  1. /*
  2.  * aplicativo criado por knb mabson neves
  3. mais contatos em bem10jfx.blogspot.com
  4.  */
  5. package agenda_inofx;
  6.  
  7.  
  8. import com.mysql.jdbc.PreparedStatement;
  9. import java.awt.Choice;
  10. import java.io.File;
  11. import java.net.InetAddress;
  12. import java.net.NetworkInterface;
  13. import java.net.SocketException;
  14. import java.sql.Connection;
  15. import java.sql.DriverManager;
  16. import java.sql.ResultSet;
  17. import java.sql.SQLException;
  18. import java.util.Enumeration;
  19. import java.util.logging.Level;
  20. import java.util.logging.Logger;
  21. import javafx.application.Application;
  22. import javafx.beans.value.ChangeListener;
  23. import javafx.beans.value.ObservableValue;
  24. import javafx.collections.FXCollections;
  25. import javafx.collections.ObservableList;
  26. import javafx.event.ActionEvent;
  27. import javafx.event.Event;
  28. import javafx.event.EventHandler;
  29. import javafx.geometry.Orientation;
  30. import javafx.geometry.Pos;
  31. import javafx.scene.Group;
  32. import javafx.scene.Scene;
  33. import javafx.scene.control.Alert;
  34. import javafx.scene.control.Button;
  35. import javafx.scene.control.ChoiceBox;
  36. import javafx.scene.control.Label;
  37. import javafx.scene.control.ListView;
  38. import javafx.scene.control.Menu;
  39. import javafx.scene.control.MenuBar;
  40. import javafx.scene.control.MenuItem;
  41. import javafx.scene.control.Separator;
  42. import javafx.scene.control.TextArea;
  43. import javafx.scene.control.TextField;
  44. import javafx.scene.image.Image;
  45. import javafx.scene.image.ImageView;
  46. import javafx.scene.input.KeyEvent;
  47. import javafx.scene.input.MouseEvent;
  48. import javafx.scene.layout.HBox;
  49. import javafx.scene.layout.StackPane;
  50. import javafx.scene.layout.VBox;
  51. import javafx.scene.paint.Color;
  52. import javafx.scene.shape.Line;
  53. import javafx.scene.text.Text;
  54. import javafx.stage.FileChooser;
  55. import javafx.stage.FileChooser.ExtensionFilter;
  56. import javafx.stage.Stage;
  57. import jssc.SerialPort;
  58. import jssc.SerialPortEvent;
  59. import jssc.SerialPortEventListener;
  60. import jssc.SerialPortException;
  61. import jssc.SerialPortList;
  62. import org.apache.commons.mail.DefaultAuthenticator;
  63. import org.apache.commons.mail.Email;
  64. import org.apache.commons.mail.EmailAttachment;
  65. import org.apache.commons.mail.EmailException;
  66. import org.apache.commons.mail.MultiPartEmail;
  67. import org.apache.commons.mail.SimpleEmail;
  68.  
  69. /*
  70.  */
  71. public class Agenda_InoFX extends Application {
  72.  Stage stagemail=new Stage();
  73.     Label txNome = new Label("Nome");
  74.     TextField tfnome = new TextField();
  75.     Label txtelefone = new Label("Telefone");
  76.     TextField tftelefone = new TextField();
  77.     Label txemail = new Label("Email");
  78.     TextField tfemail = new TextField();
  79.  
  80.     Label txInfo = new Label("Informaçoes");
  81.     TextField tfinfo = new TextField();
  82.     ObservableList<String> names = FXCollections.observableArrayList();
  83.     ListView<String> listView = new ListView<String>(names);
  84.  
  85.     String url = "jdbc:mysql://localhost/agenda1";
  86.     String strlerbd = "SELECT * FROM contatos";
  87.     Connection conection;
  88.     String Executebd;
  89.     String strDeletebd;
  90.     String strSavebd;
  91.     String vllist;
  92.     String informes;
  93.      Label lbdadosnome;
  94.         Label lbdadostelefone;
  95.         Label lbdadosemail;
  96.         Label lbdadosinformer;
  97.         String vldadostenefone="",vldadosnome="",vldadosinformer="",vldadosemail="";
  98.         String strpesquisalista="";
  99.          SerialPort serialport;
  100.     String input;
  101.         //vbmil1
  102.         Label lbmaildestino=new Label("email dsetino");
  103.          TextField tfmail_destino=new TextField();
  104.          Label lbmailsubject=new Label("titulo");
  105.          TextField tfmail_subject=new TextField();
  106.          Label lbmail_area=new Label("mensagens a enviar");
  107.          TextArea tareamail=new TextArea();
  108.           File selectFile ;
  109.           FileChooser fc;
  110.           TextField tfDial=new TextField();
  111.           ObservableList<String> namesDial = FXCollections.observableArrayList( );
  112.         ListView<String> listViewDial = new ListView<String>(namesDial);
  113.          String vlkeyrelase;
  114.          TextArea tadial=new TextArea();
  115.          Button btportas = new Button("conectar");
  116.                          int  i=0;
  117.       String axp="";
  118.       String strvlDigitos="";
  119.      
  120.     void mysqlsddlol(){
  121.      
  122.          try {
  123.              
  124.              
  125.              conection=DriverManager.getConnection(url,"root","");
  126.             PreparedStatement pesquisa=(PreparedStatement) conection.prepareStatement(""+Executebd);
  127.            
  128.              if(Executebd==strlerbd) {
  129.            names.clear();
  130.             pesquisa.executeQuery();
  131.            
  132.             ResultSet resultado=pesquisa.executeQuery();
  133.             while (resultado.next()) {
  134.                 String nome=resultado.getString("nome");
  135.                 String telefone=resultado.getString("telefone");
  136.                 String email=resultado.getString("email");
  137.                 String informes=resultado.getString("informe");
  138.                  System.out.println("nome="+nome+
  139.                        
  140.                         "telefone="+telefone
  141.                         +"email="+email+
  142.                          "informe="+informes
  143.                                                );
  144.                  
  145.               names.add(nome);
  146.            
  147.            }
  148.              }else if(Executebd==strDeletebd) {
  149.                   pesquisa.executeUpdate();
  150.                
  151.            }else if(Executebd==strSavebd){
  152.                 pesquisa.executeUpdate();
  153.             }
  154.              else if(Executebd==strpesquisalista){
  155.                 pesquisa.executeQuery();
  156.                
  157.                
  158.                  ResultSet resultado=pesquisa.executeQuery();
  159.             while (resultado.next()) {
  160.                 String nome=resultado.getString("nome");
  161.                 String telefone=resultado.getString("telefone");
  162.                 String email=resultado.getString("email");
  163.                 String informes=resultado.getString("informe");
  164.                  System.out.println("nome="+nome+
  165.                        
  166.                         "telefone="+telefone
  167.                         +"emamil="+email+
  168.                          "informe="+informes);
  169.                vldadosnome=nome;
  170.                vldadostenefone=telefone;
  171.                vldadosemail=email;
  172.                vldadosinformer=informes;
  173.                lbdadosnome.setText("Nome:"+vldadosnome);
  174.         lbdadostelefone.setText("Telefone:"+vldadostenefone);
  175.          lbdadosemail.setText("Email:"+vldadosemail);
  176.         lbdadosinformer.setText("Informer:\n"+vldadosinformer);
  177.        
  178.            }
  179.              
  180.             }
  181.     } catch (SQLException ex) {
  182.             Logger.getLogger(Agenda_InoFX.class.getName()).log(Level.SEVERE, null, ex);
  183.         }
  184.      }
  185.    
  186.    
  187.    
  188. //comunicaçao jssc
  189.    
  190.    
  191.     public void stageconfigport(){
  192.     Stage stageportas=new Stage();
  193.     Group gpportas=new Group();
  194.     Scene sceneportas=new Scene(gpportas,350,250,Color.SILVER);
  195.     stageportas.setScene(sceneportas);
  196.  
  197.        VBox vbportas = new VBox();
  198.         HBox hb1portas = new HBox(10);
  199.         Label lbportas = new Label("portas");
  200.        
  201.         hb1portas.getChildren().addAll(lbportas, cbportas1);
  202.         HBox hb2portas = new HBox(10);
  203.         Label lbvelocidade = new Label("velocidade");
  204.        
  205.         hb2portas.getChildren().addAll(lbvelocidade, cbbauds);
  206.  
  207.        
  208.         vbportas.getChildren().addAll(hb1portas, hb2portas, btportas);
  209.  
  210.        vbportas.prefHeightProperty().bind(stageportas.heightProperty().divide(3).subtract(25));
  211.        vbportas.prefWidthProperty().bind(stageportas.widthProperty().divide(3).subtract(10));
  212.  
  213.        vbportas.layoutYProperty().bind(stageportas.heightProperty().divide(3).subtract(25));
  214.        vbportas.layoutXProperty().bind(stageportas.widthProperty().divide(3).subtract(10));
  215.  
  216.  
  217.         gpportas.getChildren().addAll(vbportas);
  218.  
  219.      
  220.    btportas.setOnMouseClicked(new EventHandler<MouseEvent>() {
  221.         @Override
  222.         public void handle(MouseEvent event) {
  223.         sconections();
  224.        
  225.         }
  226.     });
  227.    
  228.    
  229.     stageportas.show();
  230.      
  231.    
  232.     }
  233.     //arequisiçoes de de conexao com jssc serao confirmadas aprtir destas instancia
  234.     ChoiceBox cbportas1 = new ChoiceBox();
  235.          ChoiceBox cbbauds = new ChoiceBox();
  236.     public void seachlistports(){
  237.        
  238.        
  239.        
  240.              cbbauds.getItems().clear();
  241.         final String[] serialPortasNomes = SerialPortList.getPortNames();
  242.         for (String nomeportas : serialPortasNomes) {
  243.             cbportas1.getItems().addAll("" + nomeportas);
  244.             System.out.println(" porta" + nomeportas);
  245.         }
  246.    
  247.          
  248.     }
  249.    
  250.  
  251.     public void sconections(){
  252.      
  253.                                 System.out.println("POrta escolhida " + cbportas1.getValue().toString());
  254.                                 serialport = new SerialPort(cbportas1.getValue().toString());
  255.                                 try {
  256.                                     serialport.openPort();
  257.                                     serialport.setParams(9600, 8, 1, 0);
  258.                                     serialport.setEventsMask(SerialPort.MASK_RXCHAR);
  259.                                     System.out.println("conectado");
  260.                                 } catch (SerialPortException ex) {
  261.                                     //Logger.getLogger(ControlePCVolumeGTAFXIINO2.class.getName()).log(Level.SEVERE, null, ex);
  262.                                 }
  263.  
  264.                                 if (serialport.isOpened() == true) {
  265.                                    btportas.setText("Desconectar");
  266.                                 } else {
  267.                                         btportas.setText("Conectar");
  268.  
  269.                                 }
  270.                                
  271.                                
  272.                                
  273.                                 try {
  274.                                     serialport.addEventListener(new SerialPortEventListener() {
  275.                                         @Override
  276.                                         public void serialEvent(SerialPortEvent serialPortEvent) {
  277.                                            
  278.                                            
  279.                                             try {
  280.                                                 input = serialport.readString(serialPortEvent.getEventValue());
  281.                                                 if (serialPortEvent.isRXCHAR()) {
  282.                                                     if (input.endsWith("\r\n")) {
  283.                                                        
  284.                                                         String vlx = input.substring(0, input.indexOf("\r\n"));
  285.                                                         System.out.println("dados recebidos" + vlx);
  286.                                                         tadial.appendText("recebido="+ vlx+"\n");
  287.                                                        
  288.                                                     }}
  289.                                             } catch (SerialPortException ex) {
  290.                                                 Logger.getLogger(Agenda_InoFX.class.getName()).log(Level.SEVERE, null, ex);
  291.                                             }
  292.                                            
  293.                                            
  294.                                         }});
  295.                                 } catch (SerialPortException ex) {
  296.                                     Logger.getLogger(Agenda_InoFX.class.getName()).log(Level.SEVERE, null, ex);
  297.                                 }
  298.      }
  299.    
  300.      
  301.     public void discador(){
  302.    
  303.     Stage stageDial=new Stage();
  304.         Group gpDial=new Group();
  305.         Scene sceneDial=new Scene(gpDial,400, 600, Color.SILVER);
  306.         sceneDial.getStylesheets().addAll("" + getClass().getResource("DarkTheme.css"));
  307.        
  308.         stageDial.setScene(sceneDial);
  309.       HBox hbdial1=new HBox();
  310.     VBox vbdial1=new VBox();
  311.      
  312.     hbdial1.setLayoutX(10);
  313.     hbdial1.setLayoutY(10);
  314.      
  315.     hbdial1.prefHeightProperty().bind(stageDial.heightProperty().subtract(50));
  316.     hbdial1.prefWidthProperty().bind(stageDial.widthProperty().subtract(30));
  317.      vbdial1.prefHeightProperty().bind(hbdial1.prefHeightProperty().subtract(30));
  318.     vbdial1.prefWidthProperty().bind(hbdial1.prefWidthProperty().subtract(30));
  319.      hbdial1.setStyle("-fx-background-color:#000000;\n"
  320.                 + "    -fx-border-radius: 10;\n"
  321.                 + "    -fx-background-radius: 15;\n"
  322.                 + "    -fx-padding: 5;");
  323.     vbdial1.setStyle("-fx-background-color:#696969;\n"
  324.                 + "    -fx-border-radius: 10;\n"
  325.                 + "    -fx-background-radius: 15;\n"
  326.                 + "    -fx-padding: 5;");
  327.            
  328.     gpDial.getChildren().add(hbdial1);
  329.     hbdial1.getChildren().add(vbdial1);
  330.     Separator sp=new Separator(Orientation.HORIZONTAL);
  331.        
  332.             listViewDial.prefHeightProperty().bind(stageDial.heightProperty().divide(4));
  333.         listViewDial.prefWidthProperty().bind(stageDial.widthProperty().subtract(15));
  334.          namesDial.addAll(names);
  335.    
  336.      
  337.         tfDial.setPromptText("digite");
  338.         vbdial1.getChildren().addAll(listViewDial,sp,tfDial,new Separator(Orientation.HORIZONTAL));
  339.        
  340.            
  341.        
  342.                
  343.         //1 hbox 2 vbox
  344.                    //vb1 hb1 bt1 bt2 bt3
  345.                      
  346.                //*vb1 quatro conjuntos de hbbox e conjunto de 3 butoes em cada hbox
  347.                //vb22 botoes ligar e desligar        
  348.     HBox hbdialx1=new HBox();
  349.      vbdial1.getChildren().addAll(hbdialx1);
  350.    
  351.      VBox vbdialx1=new VBox();
  352.     VBox vbdialx2=new VBox();
  353.       hbdialx1.getChildren().addAll(vbdialx1,vbdialx2);          
  354.        
  355.       vbdialx2.getChildren().addAll(tadial);
  356.       tadial.setPrefWidth(250);
  357.       tadial.setPrefHeight(130);
  358.  
  359.      
  360.  final HBox hbbt[] =new HBox[6];
  361.      final Button btcp[]=new Button[13];
  362.      
  363.       hbbt[1]=new HBox();
  364.       hbbt[2]=new HBox();
  365.       hbbt[3]=new HBox();  
  366.       hbbt[4]=new HBox();  
  367.       hbbt[5]=new HBox();
  368.        btcp[1]=new Button(""+1);
  369.       btcp[2]=new Button(""+2);
  370.       btcp[3]=new Button(""+3);
  371.       btcp[4]=new Button(""+4);
  372.       btcp[5]=new Button(""+5);
  373.       btcp[6]=new Button(""+6);
  374.       btcp[7]=new Button(""+7);
  375.       btcp[8]=new Button(""+8);
  376.       btcp[9]=new Button(""+9);
  377.       btcp[10]=new Button("#");
  378.       btcp[11]=new Button(""+0);
  379.       btcp[12]=new Button("*");
  380.      
  381.       for ( i=1 ;i>13;i++){
  382.        
  383.       btcp[i].setAlignment(Pos.CENTER);
  384.       btcp[i].setPrefSize(75,60);
  385.        
  386.       }
  387.      
  388.       btcp[1].setOnMouseClicked(new EventHandler<Event>() {
  389.           @Override
  390.           public void handle(Event event) {
  391.           strvlDigitos+=""+btcp[1].getText();
  392.               System.out.println(" valor "+strvlDigitos);  
  393.               tfDial.setText(""+strvlDigitos);
  394.           }
  395.       });
  396.       btcp[2].setOnMouseClicked(new EventHandler<Event>() {
  397.           @Override
  398.           public void handle(Event event) {
  399.          
  400.       strvlDigitos+=""+btcp[2].getText();
  401.               System.out.println(" valor "+strvlDigitos);  
  402.               tfDial.setText(""+strvlDigitos);
  403.           }
  404.       });
  405.       //
  406.       btcp[3].setOnMouseClicked(new EventHandler<Event>() {
  407.           @Override
  408.           public void handle(Event event) {
  409.           strvlDigitos+=""+btcp[3].getText();
  410.               System.out.println(" valor "+strvlDigitos);  
  411.               tfDial.setText(""+strvlDigitos);
  412.           }
  413.       });
  414.       btcp[4].setOnMouseClicked(new EventHandler<Event>() {
  415.           @Override
  416.           public void handle(Event event) {
  417.          
  418.       strvlDigitos+=""+btcp[4].getText();
  419.               System.out.println(" valor "+strvlDigitos);  
  420.               tfDial.setText(""+strvlDigitos);
  421.           }
  422.       });
  423.       //
  424.       btcp[5].setOnMouseClicked(new EventHandler<Event>() {
  425.           @Override
  426.           public void handle(Event event) {
  427.           strvlDigitos+=""+btcp[5].getText();
  428.               System.out.println(" valor "+strvlDigitos);  
  429.               tfDial.setText(""+strvlDigitos);
  430.           }
  431.       });
  432.       btcp[6].setOnMouseClicked(new EventHandler<Event>() {
  433.           @Override
  434.           public void handle(Event event) {
  435.       strvlDigitos+=""+btcp[6].getText();
  436.               System.out.println(" valor "+strvlDigitos);  
  437.               tfDial.setText(""+strvlDigitos);
  438.           }
  439.       });
  440.      
  441.       btcp[7].setOnMouseClicked(new EventHandler<Event>() {
  442.           @Override
  443.           public void handle(Event event) {
  444.           strvlDigitos+=""+btcp[7].getText();
  445.               System.out.println(" valor "+strvlDigitos);  
  446.               tfDial.setText(""+strvlDigitos);
  447.           }
  448.       });
  449.       btcp[8].setOnMouseClicked(new EventHandler<Event>() {
  450.           @Override
  451.           public void handle(Event event) {
  452.          
  453.       strvlDigitos+=""+btcp[8].getText();
  454.               System.out.println(" valor "+strvlDigitos);  
  455.               tfDial.setText(""+strvlDigitos);
  456.           }
  457.       });
  458.      
  459.       btcp[9].setOnMouseClicked(new EventHandler<Event>() {
  460.           @Override
  461.           public void handle(Event event) {
  462.          
  463.       strvlDigitos+=""+btcp[9].getText();
  464.               System.out.println(" valor "+strvlDigitos);  
  465.               tfDial.setText(""+strvlDigitos);
  466.           }
  467.       });
  468.      
  469.       btcp[10].setOnMouseClicked(new EventHandler<Event>() {
  470.           @Override
  471.           public void handle(Event event) {
  472.          
  473.       strvlDigitos+="#";
  474.               System.out.println(" valor "+strvlDigitos);  
  475.               tfDial.setText(""+strvlDigitos);
  476.           }
  477.       });
  478.      
  479.       btcp[11].setOnMouseClicked(new EventHandler<Event>() {
  480.           @Override
  481.           public void handle(Event event) {
  482.          
  483.       strvlDigitos+="0";
  484.               System.out.println(" valor "+strvlDigitos);  
  485.               tfDial.setText(""+strvlDigitos);
  486.           }
  487.       });
  488.      
  489.       btcp[12].setOnMouseClicked(new EventHandler<Event>() {
  490.           @Override
  491.           public void handle(Event event) {
  492.          
  493.       strvlDigitos+="*";
  494.               System.out.println(" valor "+strvlDigitos);  
  495.               tfDial.setText(""+strvlDigitos);
  496.           }
  497.       });
  498.       //buttons
  499.       tfDial.setOnKeyReleased(new EventHandler<KeyEvent>() {
  500.         @Override
  501.         public void handle(KeyEvent event) {
  502.              
  503.             System.out.println(" valor "+strvlDigitos);  
  504.            // fazer pesquisa e adcionar no listview dial
  505.           vlkeyrelase=strvlDigitos;
  506.                         strpesquisalista="select * from contatos where nome=\""+ vlkeyrelase+"\"";
  507.                          Executebd=strpesquisalista;
  508. //pesquisa por listview
  509. PreparedStatement pesquisalista;
  510.             try {
  511.                 pesquisalista = (PreparedStatement) conection.prepareStatement(""+strpesquisalista);
  512.            
  513.            
  514.                    ResultSet rpesquisalistacall=pesquisalista.executeQuery();
  515.                  
  516.                
  517.                
  518.                
  519.             while (rpesquisalistacall.next()) {
  520.                 String nome=rpesquisalistacall.getString("nome");
  521.                 String telefone=rpesquisalistacall.getString("telefone");
  522.                 String email=rpesquisalistacall.getString("email");
  523.                 String informes=rpesquisalistacall.getString("informe");
  524.                  System.out.println("nome="+nome+
  525.                        
  526.                         "telefone="+telefone
  527.                         +"emamil="+email+
  528.                          "informe="+informes);
  529.                String vldadosnomelista=nome;
  530.                String vldadostenefonelista=telefone;
  531.                 listViewDial.getItems().addAll(""+vldadosnomelista);
  532.                
  533.            }
  534.            } catch (SQLException ex) {
  535.                 Logger.getLogger(Agenda_InoFX.class.getName()).log(Level.SEVERE, null, ex);
  536.             }  
  537.                  
  538.         }
  539.     });
  540.       vbdialx1.getChildren().addAll(hbbt[1],hbbt[2],hbbt[3],hbbt[4],hbbt[5]);
  541.       hbbt[1].getChildren().addAll(btcp[1],btcp[2],btcp[3]);
  542.       hbbt[2].getChildren().addAll(btcp[4],btcp[5],btcp[6]);
  543.       hbbt[3].getChildren().addAll(btcp[7],btcp[8],btcp[9]);
  544.       hbbt[4].getChildren().addAll(btcp[10],btcp[11],btcp[12]);
  545.      
  546.       Button btsends[]=new Button[3];
  547.        
  548.       btsends[1]=new Button("send");
  549.       btsends[2]=new Button("not");
  550.       btsends[1].setAlignment(Pos.CENTER);
  551.       btsends[2].setAlignment(Pos.CENTER);
  552.       btsends[1].prefWidth(60+30);
  553.       btsends[2].prefWidth(60+30);
  554.       hbbt[5].getChildren().addAll(btsends[1],btsends[2]);
  555.      
  556.      
  557.      
  558.      
  559.      
  560.       //ligar
  561.        btsends[1].setOnMouseClicked(new EventHandler<Event>() {
  562.           @Override
  563.           public void handle(Event event) {
  564.           axp="atd"+strvlDigitos+";\r";
  565.           // axp="at;";
  566.            // axp="123;";
  567.          // byte byteEv=Byte.parseByte((String) axp );
  568.               try {
  569.                   serialport.writeBytes(axp.getBytes());
  570.               } catch (SerialPortException ex) {
  571.                   //Logger.getLogger(Agenda_InoFX.class.getName()).log(Level.SEVERE, null, ex);
  572.                   System.out.println("nao conectado ou nao trasmitindo dados");
  573.               }
  574.               System.out.println(" valor "+strvlDigitos);  
  575.              
  576.                 tadial.appendText("enviado="+ axp);
  577.           }
  578.       });
  579.        //desligar
  580.       btsends[2].setOnMouseClicked(new EventHandler<Event>() {
  581.           @Override
  582.           public void handle(Event event) {
  583.            try {   
  584.                   serialport.writeBytes("ATH0;\r".getBytes());
  585.               } catch (SerialPortException ex) {
  586.                   Logger.getLogger(Agenda_InoFX.class.getName()).log(Level.SEVERE, null, ex);
  587.               }
  588.      
  589.               System.out.println(" \"ATH0\" " );  
  590.               tadial.appendText("enviado=ATH0;" );
  591.               strvlDigitos="";
  592.               axp="";
  593.               tfDial.setText("");
  594.           }
  595.       });
  596.  
  597.      
  598.      
  599.      
  600.              
  601.              
  602.              
  603.              
  604.      
  605.      
  606.      
  607.      
  608.      
  609.      
  610.      
  611.     stageDial.show();
  612.        
  613.        
  614.        
  615.        
  616.    
  617.    
  618.    
  619.     }
  620.    
  621.    
  622.    
  623.     @Override
  624.     public void start(Stage stage) {
  625.         MenuItem menuitem1=new MenuItem("");
  626.        final Menu menu1 = new Menu("comunicação");
  627.        menu1.getItems().add(menuitem1);
  628.         MenuBar menuBar = new MenuBar();
  629.  menuBar.getMenus().addAll(menu1 );
  630.   seachlistports();
  631.  Executebd=strlerbd;
  632.         Group gp = new Group();
  633.         Scene scene = new Scene(gp, 750, 450, Color.ALICEBLUE);
  634.         stage.setScene(scene);
  635.         scene.getStylesheets().addAll("" + getClass().getResource("DarkTheme.css"));
  636.          
  637.         menuBar.prefWidthProperty().bind(stage.widthProperty());
  638.         menuitem1.setOnAction(new EventHandler<ActionEvent>() {
  639.             @Override
  640.             public void handle(ActionEvent event) {
  641.             stageconfigport();
  642.             }
  643.         });
  644.        
  645.          
  646.         Image image = new Image("" + Agenda_InoFX.class.getResource("pexels.png"));
  647.  
  648.         // simple displays ImageView the image as is
  649.         ImageView iv1 = new ImageView();
  650.         iv1.setImage(image);
  651.         gp.getChildren().addAll(iv1,menuBar);
  652.  
  653.         VBox vboxPrimeiro = new VBox(10);
  654.         vboxPrimeiro.setStyle("-fx-background-color:#000000;\n"
  655.                 + "    -fx-border-radius: 10;\n"
  656.                 + "    -fx-background-radius: 15;\n"
  657.                 + "    -fx-padding: 5;");
  658.        
  659.         gp.getChildren().add(vboxPrimeiro);
  660.  
  661.         HBox hb1 = new HBox(5);
  662.         vboxPrimeiro.layoutXProperty().bind(scene.widthProperty().divide(6).subtract(20));
  663.         vboxPrimeiro.layoutYProperty().bind(scene.heightProperty().divide(6).subtract(15));
  664.         VBox vb1 = new VBox();
  665.  
  666.         Label txTitle = new Label("Agenda telefonica JFX");
  667.  
  668.         tfnome.setPromptText("nome");
  669.         tftelefone.setPromptText("Telefone");
  670.         tfemail.setPromptText("Email");
  671.  
  672.         tfinfo.setPromptText("Informaçoes");
  673.         HBox hbbt_info = new HBox(5);
  674.         vb1.setStyle("-fx-background-color:#696969;\n"
  675.                 + "    -fx-border-radius: 10;\n"
  676.                 + "    -fx-background-radius: 15;\n"
  677.                 + "    -fx-padding: 5;");
  678.         vb1.getChildren().addAll(
  679.                 txTitle, txNome, tfnome,
  680.                 txtelefone, tftelefone,
  681.                 txemail, tfemail, txInfo, tfinfo, hbbt_info
  682.         );
  683.         Button btSave = new Button("salvar");
  684.         Button btEditar = new Button("Editar");
  685.         hbbt_info.getChildren().addAll(btSave, btEditar);
  686.         hbbt_info.setStyle("-fx-background-color:#000000;\n"
  687.                 + "    -fx-background-radius: 3;\n"
  688.                 + "    -fx-padding: 5;");
  689.         VBox vb2 = new VBox();
  690.  
  691.         vb2.setStyle("-fx-background-color:#696969;\n"
  692.                 + "    -fx-border-radius: 0px 20px 0px 20px;\n"
  693.                 + "    -fx-background-radius: 15;\n"
  694.                 + "    -fx-padding: 5;");
  695.         //funçoes so serao validaas se um contato for adcionado no button
  696.         listView.setPrefSize(100, 180);
  697.         HBox hbinfbutns = new HBox(5);
  698.  
  699.         Button btDel = new Button("DEL");
  700.         Button btemail = new Button("Email");
  701.         Button Btsms = new Button("SMS");
  702.         Button Btligar = new Button("Ligar");
  703.         hbinfbutns.getChildren().addAll(btDel, btemail, Btsms, Btligar);
  704.        
  705.        
  706.         HBox hbdados1=new HBox(20);
  707.          HBox hbdados2=new HBox(20);
  708.          lbdadosnome=new Label("Nome:"+vldadosnome);
  709.         lbdadostelefone=new Label("Telefone:"+vldadostenefone);
  710.          lbdadosemail=new Label("Email:"+vldadosemail);
  711.         lbdadosinformer=new Label("Informer:"+vldadosinformer);
  712.        
  713.         hbdados1.getChildren().addAll(lbdadosnome,lbdadostelefone);
  714.         hbdados2.getChildren().addAll(lbdadosemail,lbdadosinformer);
  715.        
  716.        
  717.        
  718.        
  719.        
  720.         vb2.getChildren().addAll(listView, hbinfbutns,hbdados1,hbdados2);
  721.         hb1.getChildren().addAll(vb1, vb2);
  722.  
  723.         HBox hb2 = new HBox(10);
  724.  
  725.         Button btAtende = new Button("Atender");
  726.         Button btDisca = new Button("Discar");
  727.         Button Btdesligar = new Button("Finalizar");
  728.         hb2.getChildren().addAll(btAtende, btDisca, Btdesligar);
  729.  
  730.         vboxPrimeiro.getChildren().addAll(hb1, hb2);
  731.        
  732.        
  733.         //mysql
  734.        mysqlsddlol();
  735.         Btligar.setOnMouseClicked(new EventHandler<MouseEvent>() {
  736.             @Override
  737.             public void handle(MouseEvent event) {
  738.            axp="atd"+vldadostenefone+";\r";
  739.           // axp="at;";
  740.            // axp="123;";
  741.          // byte byteEv=Byte.parseByte((String) axp );
  742.               try {
  743.                   serialport.writeBytes(axp.getBytes());
  744.               } catch (SerialPortException ex) {
  745.                   //Logger.getLogger(Agenda_InoFX.class.getName()).log(Level.SEVERE, null, ex);
  746.                   System.out.println("nao conectado ou nao trasmitindo dados");
  747.               }
  748.               System.out.println(" valor "+vldadostenefone);  
  749.              
  750.                 tfDial.setText(vldadostenefone);
  751.           discador();
  752.            
  753.            
  754.            
  755.            
  756.             }
  757.         });
  758.        Btdesligar.setOnMouseClicked(new EventHandler<MouseEvent>() {
  759.             @Override
  760.             public void handle(MouseEvent event) {
  761.         try {  
  762.                   serialport.writeBytes("ATH0;\r".getBytes());
  763.               } catch (SerialPortException ex) {
  764.                   Logger.getLogger(Agenda_InoFX.class.getName()).log(Level.SEVERE, null, ex);
  765.               }
  766.      
  767.               System.out.println(" \"ATH0\"LIGAÇAO RECEBIDA FINALIZADA " );  
  768.               tadial.appendText("enviado=ATH0;" );
  769.            
  770.            
  771.             }
  772.         });
  773.        btAtende.setOnMouseClicked(new EventHandler<MouseEvent>() {
  774.             @Override
  775.             public void handle(MouseEvent event) {
  776.                
  777.                 try {
  778.                    
  779.                      System.out.println("ATENDENDO ALIGAÇAO");
  780.                     serialport.writeBytes("ATH1;\r".getBytes());
  781.               tadial.appendText("enviado=ATH1;" );        
  782.              
  783.                 } catch (SerialPortException ex) {
  784.                      System.out.println("porta nao conectada");
  785.                  Alert al=new Alert(Alert.AlertType.ERROR);
  786.                 al.setContentText("O telefone nao esta\n"
  787.                         + " conectado na porta de coneao\n"
  788.                         + " no momento ou outro error");
  789.                 al.show(); }
  790.              
  791.             }
  792.         });
  793.        listView.getSelectionModel().selectedItemProperty().addListener(
  794.             new ChangeListener<String>() {
  795.                 public void changed(ObservableValue<? extends String> ov,
  796.                     String old_val, String new_val) {
  797.                       System.out.println("informe "+new_val);
  798.                      
  799.                        vllist=new_val;
  800.                         strpesquisalista="select * from contatos where nome=\""+vllist+"\"";
  801.                          Executebd=strpesquisalista;
  802. //pesquisa por listview
  803.                    
  804.                    mysqlsddlol();
  805.                 }
  806.         });
  807.        btDisca.setOnMouseClicked(new EventHandler<MouseEvent>() {
  808.             @Override
  809.             public void handle(MouseEvent event) {
  810.        
  811.             discador();
  812.            
  813.            
  814.            
  815.            
  816.             }
  817.         });
  818.        
  819.        
  820.        btSave.setOnAction(new EventHandler<ActionEvent>() {
  821.             @Override
  822.             public void handle(ActionEvent event) {
  823.                 String ipAddress = null;
  824.         Enumeration<NetworkInterface> net = null;
  825.         try {
  826.             net = NetworkInterface.getNetworkInterfaces();
  827.         } catch (SocketException e) {
  828.             throw new RuntimeException(e);
  829.         }
  830.  
  831.         while (net.hasMoreElements()) {
  832.             NetworkInterface element = net.nextElement();
  833.             Enumeration<InetAddress> addresses = element.getInetAddresses();
  834.             while (addresses.hasMoreElements()) {
  835.                 InetAddress ip = addresses.nextElement();
  836.  
  837.                 if (ip.isSiteLocalAddress()) {
  838.                     ipAddress = ip.getHostAddress();
  839.                     System.out.println(".handle()"+ipAddress.toString());
  840.                     informes=tfinfo+"=+="+ipAddress;
  841.                 }          
  842.             }
  843.         }
  844.        
  845.                 if (tfnome.getText().length()>1&&tftelefone.getText().length()>1) {
  846.                    
  847.                     strSavebd="insert into Contatos(nome,telefone,email,informe )"+
  848.                             "values(\""+tfnome.getText()+"\",\""+tftelefone.getText()+
  849.                             "\",\""+tfemail.getText()+"\",\""+tfinfo.getText()+"\");";
  850.                      Executebd=strSavebd;
  851.                      mysqlsddlol();
  852.                       Executebd=strlerbd;
  853.                      mysqlsddlol();
  854.                 }
  855.             }
  856.         });
  857.        btemail.setOnAction(new EventHandler<ActionEvent>() {
  858.      @Override
  859.      public void handle(ActionEvent event) {
  860.           stagemail.setTitle("Email para :"+vldadosemail);
  861.         Group gpmail=new Group();
  862.         Scene scenemail=new Scene(gpmail,400,400,Color.SILVER);
  863.          stagemail.setScene(scenemail);
  864.          
  865.           scenemail.getStylesheets().addAll("" + getClass().getResource("DarkTheme.css"));  
  866.          VBox vbomil1=new VBox();
  867.          //vbmail1
  868.          Button btenviarmail=new Button("enviar email");
  869.            
  870.          Button btchoise=new Button("anexos");
  871.          vbomil1.getChildren().addAll(lbmaildestino,tfmail_destino,
  872.                  lbmailsubject,tfmail_subject,lbmail_area,tareamail,new HBox(btenviarmail,btchoise));
  873.            tfmail_destino.setPromptText(""+vldadosemail);
  874.          gpmail.getChildren().add(vbomil1);
  875.             btchoise.setOnAction(new EventHandler<ActionEvent>() {
  876.             @Override
  877.             public void handle(ActionEvent event) {
  878.              fc=new FileChooser();
  879.              fc.setTitle("Open Resource File");
  880.  
  881.         selectFile = fc.showOpenDialog(null);
  882.                 if (selectFile != null) {
  883.                     System.out.println("ARQUIVO ESCOLHIDO"+selectFile+
  884.                             "\n"+selectFile.getName()+
  885.                             "\n"+selectFile.toURI());
  886.                 }
  887.             }
  888.        
  889.          });
  890.          btenviarmail.setOnAction(new EventHandler<ActionEvent>() {
  891.             @Override
  892.             public void handle(ActionEvent event) {
  893.         // EmailAttachment attachment = new EmailAttachment();
  894.        
  895.  
  896. //attachment.setPath(""+selectFile.getAbsoluteFile() ); //caminho da imagem
  897. //attachment.setDisposition(EmailAttachment.ATTACHMENT);
  898. //attachment.setDescription("anexo");
  899. //attachment.setName("APL Agenda");
  900.  
  901.    MultiPartEmail email = new MultiPartEmail();
  902.       try {
  903.               stagemail.setTitle(" AGUARDE ! ENVIANDO EMAIL PARA:"+vldadosemail);
  904.    email.setHostName("smtp.googlemail.com");
  905. email.setSmtpPort(465);
  906. email.setAuthentication("appagendainofx", "xxxxxxxxxxxxx");
  907. email.setSSLOnConnect(true);
  908.    
  909.              email.setFrom("xxxxxxx");
  910.              email.setSubject("Subject: "+tfmail_subject.getText());
  911. email.setMsg(":)"+tareamail.getText());
  912. email.addTo(""+vldadosemail);
  913. //email.attach(attachment);
  914. email.send();
  915.           System.out.println("email enviado");
  916.            stagemail.setTitle("Email enviado para :"+vldadosemail);
  917.          } catch (EmailException ex) {
  918.              
  919.           System.out.println("Email Nao Enviado");
  920.            stagemail.setTitle("Email nao enviado para :"+vldadosemail);
  921.              Logger.getLogger(Agenda_InoFX.class.getName()).log(Level.SEVERE, null, ex);
  922.          }        
  923.            
  924.             }
  925.         });
  926.          
  927.          
  928.          stagemail.show();
  929.          
  930.          
  931.          
  932.    
  933. }
  934.  });
  935.        
  936.           btDel.setOnAction(new EventHandler<ActionEvent>() {
  937.             @Override
  938.             public void handle(ActionEvent event) {
  939.                 System.out.println("valox"+vllist);
  940.                     strDeletebd="delete from Contatos where nome=\""+vllist+"\";";
  941.                     //"+ vllista+"
  942.                     Executebd=strDeletebd;
  943.                      mysqlsddlol();
  944.                       Executebd=strlerbd;
  945.                      mysqlsddlol();
  946.                 }
  947.            
  948.         });
  949.      
  950.         stage.show();
  951.     }
  952.  
  953.     /**
  954.      * @param args the command line arguments
  955.      */
  956.     public static void main(String[] args) {
  957.         launch(args);
  958.     }
  959.  
  960. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement