ошибка: erreur estError resolving onAction = '# send_mail', либо обработчик событий отсутствует в пространстве имен, либо в скрипте произошла ошибка - PullRequest
0 голосов
/ 31 марта 2020

это файл контроллера:

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package aaaaaa;


import java.io.FileOutputStream;
import java.io.IOException;

import com.lowagie.text.Chunk;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.FontFactory;
import com.lowagie.text.Paragraph;
import com.lowagie.text.Phrase;
import com.lowagie.text.pdf.PdfWriter;

import com.lowagie.text.Cell;
import com.lowagie.text.Chunk;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Element;
import com.lowagie.text.Font;
import com.lowagie.text.FontFactory;
import com.lowagie.text.Paragraph;
import com.lowagie.text.Table;
import com.lowagie.text.pdf.PdfCell;
import com.lowagie.text.pdf.PdfPCell;
import com.lowagie.text.pdf.PdfPTable;
import com.lowagie.text.pdf.PdfWriter;
import java.awt.Color;
import java.awt.Component;
import java.awt.HeadlessException;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

import java.net.URL;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.ResourceBundle;
import java.util.function.Predicate;
import java.util.logging.Level;
import java.util.logging.Logger;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.collections.transformation.FilteredList;
import javafx.collections.transformation.SortedList;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.print.PrinterJob;
import javafx.scene.control.Button;

import javafx.scene.control.Label;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.TextField;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.input.KeyEvent;
import javafx.scene.input.MouseEvent;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;

import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;



public class ThirdController implements Initializable {

    public class ThirdController implements Initializable {


 // text fields

 @FXML
private TextField txt_modifier,txt_nom,txt_prenom,txt_matricule,txt_departement,txt_mot_de_passe,txt_recherche ; 



 // bouttons 

  @FXML
private Button btn_ajouter,btn_modifier,btn_supprimer,btn_send_mail ;

  @FXML

  private Button btn_export_excel , btn_export_pdf ; 


  // redefinir tt les composants de fourth.fxml

@FXML 

private TableView<utilisateur> table ; 

@FXML

private TableColumn <utilisateur,String>nom,prenom,matricule,mot_de_passe,departement;

@FXML

private TableColumn <utilisateur,Integer> id ;

ObservableList oblist = FXCollections.observableArrayList ();

            ArrayList<utilisateur> users = new ArrayList<utilisateur>();

@ FXML publi c void ajouter (ActionEvent ae) {

}

@ FXML publi c модификатор void (ActionEvent ae) {

}

@ FXML publi c void supprimer (ActionEvent ae) {

}

@ FXML publi c void chercher (ActionEvent ae) {

}

@ FXML publi c void export_pdf (ActionEvent ae) {

}

@ FXML publi c void export_excel (ActionEvent ae) {

}

@ F XML

public void send_mail(ActionEvent ae){

}

@ Override publi c void initialize (URL url, ResourceBundle rb) {

}}

и это мой файл f xml:

<?xml version="1.0" encoding="UTF-8"?>

<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.TableColumn?>
<?import javafx.scene.control.TableView?>
<?import javafx.scene.control.TextField?>
<?import javafx.scene.layout.Pane?>
<?import javafx.scene.text.Font?>

<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="641.0" prefWidth="1277.0" style="-fx-background-color: blueviolet;" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="aaaaaa.ThirdController">
   <children>
      <Button fx:id="btn_modifier" layoutX="253.0" layoutY="416.0" mnemonicParsing="false" onAction="#modifier" prefHeight="37.0" prefWidth="111.0" style="-fx-border-radius: 100; -fx-background-radius: 100;" text="modifier">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Button>
      <Button fx:id="btn_supprimer" layoutX="432.0" layoutY="416.0" mnemonicParsing="false" onAction="#supprimer" prefHeight="37.0" prefWidth="111.0" style="-fx-background-radius: 100;" text="supprimer">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Button>
      <Label layoutX="20.0" layoutY="114.0" prefHeight="17.0" prefWidth="132.0" text="nom">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Label>
      <Label layoutX="16.0" layoutY="164.0" prefHeight="17.0" prefWidth="132.0" text="prenom">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Label>
      <TextField fx:id="txt_nom" layoutX="155.0" layoutY="109.0" prefHeight="17.0" prefWidth="332.0" promptText="nom" style="-fx-background-radius: 100;">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </TextField>
      <TextField fx:id="txt_prenom" layoutX="155.0" layoutY="159.0" prefHeight="25.0" prefWidth="332.0" promptText="prenom" style="-fx-background-radius: 100;">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </TextField>
      <Label alignment="TOP_CENTER" layoutX="127.0" layoutY="20.0" prefHeight="37.0" prefWidth="326.0" text="gestion des utilisateurs">
         <font>
            <Font name="Bodoni MT Condensed Bold" size="30.0" />
         </font>
      </Label>
      <Label layoutX="19.0" layoutY="216.0" prefHeight="17.0" prefWidth="122.0" text="matricule">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Label>
      <TextField fx:id="txt_matricule" layoutX="155.0" layoutY="211.0" prefHeight="25.0" prefWidth="332.0" promptText="matricule" style="-fx-background-radius: 100;">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </TextField>
      <Label layoutX="19.0" layoutY="266.0" prefHeight="17.0" prefWidth="122.0" text="departement">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Label>
      <Label layoutX="14.0" layoutY="314.0" prefHeight="17.0" prefWidth="122.0" text="mot de passe">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Label>
      <TextField fx:id="txt_departement" layoutX="155.0" layoutY="261.0" prefHeight="25.0" prefWidth="332.0" promptText="departement" style="-fx-background-radius: 100;">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </TextField>
      <TextField fx:id="txt_mot_de_passe" layoutX="155.0" layoutY="309.0" prefHeight="25.0" prefWidth="332.0" promptText="mot de passe" style="-fx-background-radius: 100;">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </TextField>
      <Button fx:id="btn_ajouter" layoutX="64.0" layoutY="416.0" mnemonicParsing="false" onAction="#ajouter" prefHeight="37.0" prefWidth="111.0" style="-fx-border-radius: 100; -fx-background-radius: 100;" text="ajouter">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Button>
      <TextField fx:id="txt_modifier" layoutX="253.0" layoutY="57.0" prefHeight="17.0" prefWidth="332.0" promptText="matricule pour modifier ou supprimer" style="-fx-background-radius: 100;">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </TextField>
      <Label layoutX="20.0" layoutY="62.0" prefHeight="17.0" prefWidth="179.0" text="modification selon :">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Label>
      <TableView fx:id="table" layoutX="646.0" layoutY="115.0" prefHeight="329.0" prefWidth="597.0" style="-fx-background-color: white; -fx-border-color: blueviolet;">
         <columns>
            <TableColumn fx:id="id" prefWidth="52.0" text="id" />
            <TableColumn fx:id="nom" prefWidth="86.0" text="nom" />
            <TableColumn fx:id="prenom" prefWidth="101.0" text="prenom" />
            <TableColumn fx:id="matricule" prefWidth="119.0" text="matricule" />
            <TableColumn fx:id="departement" prefWidth="112.0" text="departement " />
            <TableColumn fx:id="mot_de_passe" prefWidth="129.0" text="mot de passe" />
         </columns>
      </TableView>
      <TextField fx:id="txt_recherche" layoutX="919.0" layoutY="57.0" onKeyPressed="#chercher" prefHeight="17.0" prefWidth="332.0" promptText="recherche ..." style="-fx-background-radius: 100;">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </TextField>
      <Label layoutX="646.0" layoutY="62.0" prefHeight="17.0" prefWidth="179.0" text="chercher un utilisateur :">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Label>
      <Button fx:id="btn_export_excel" layoutX="712.0" layoutY="508.0" mnemonicParsing="false" onAction="#export_excel" prefHeight="37.0" prefWidth="148.0" style="-fx-border-radius: 100; -fx-background-radius: 100;" text="export to excel">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Button>
      <Button fx:id="btn_export_pdf" layoutX="1011.0" layoutY="508.0" mnemonicParsing="false" onAction="#export_pdf" prefHeight="37.0" prefWidth="148.0" style="-fx-border-radius: 100; -fx-background-radius: 100;" text="export to pdf">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Button>
      <Button fx:id="btn_send_mail" layoutX="871.0" layoutY="574.0" mnemonicParsing="false" onAction="#send_mail" prefHeight="37.0" prefWidth="148.0" style="-fx-border-radius: 100; -fx-background-radius: 100;" text="send mail">
         <font>
            <Font name="Arial Bold" size="15.0" />
         </font>
      </Button>
   </children>

</Pane>

и java класс:

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package aaaaaa;

import java.io.IOException;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javax.swing.JOptionPane;



public class consulter_utilisateurs extends Application {

    @Override
    public void start(Stage stageUsers) throws Exception {

        try {

          Parent root = FXMLLoader.load(getClass().getResource("third.fxml"));

          Scene scene = new Scene(root);

        stageUsers.setTitle(" consulter users page ");
        stageUsers.setScene(scene);
        stageUsers.show();



        } catch (IOException ex) {


           JOptionPane.showMessageDialog(null, "l'erreur est"+ex.getMessage());

           System.out.println("erreur est" + ex.getMessage());

        }

    }

      public static void main(String[] args) {
        launch(args);
    }

}
...