Bonjour Tous,
Voici un bout de code que j'exécute mais sans succès. L'objectif est de taper du texte dans l'éditeur HTML et le code HTML généré s'affiche automatiquement dans la console, voir la classe ci-dessous
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
import javafx.application.Application;
import javafx.event.EventHandler;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.input.InputEvent;
import javafx.scene.input.InputMethodEvent;
import javafx.scene.web.HTMLEditor;
import javafx.stage.Stage;
/**
* A sample that demonstrates the HTML Editor. You can make changes to the
* example text, and the resulting generated HTML is displayed.
*
* @related controls/text/SimpleLabel
* @see javafx.scene.web.HTMLEditor
*/
public class EditeurHTML extends Application {
private HTMLEditor htmlEditor = null;
private final String INITIAL_TEXT = "";
private void init(Stage primaryStage) {
Group root = new Group();
primaryStage.setScene(new Scene(root));
htmlEditor = new HTMLEditor();
htmlEditor.setPrefSize(505, 250);
htmlEditor.setHtmlText(INITIAL_TEXT);
root.getChildren().addAll(htmlEditor);
htmlEditor.addEventHandler(InputMethodEvent.INPUT_METHOD_TEXT_CHANGED, new EventHandler<InputEvent>() {
@Override
public void handle(InputEvent arg0) {
System.out.println(htmlEditor.getHtmlText());
}
});
}
@Override public void start(Stage primaryStage) throws Exception {
init(primaryStage);
primaryStage.show();
}
public static void main(String[] args) { launch(args); }
} |
On ne voit rien s'afficher dans la console d'après ce code; mais quand on remplace
InputMethodEvent.INPUT_METHOD_TEXT_CHANGED
par celui-ci et bien on voit plein de lignes générées dans la console; malheureusement cette façon n'est pas optimale selon moi.
Une idée s'il vous plaît?
Partager