“MỌI SỰ CỐ GẮNG CHƯA CHẮC ĐÃ GẶT HÁI ĐƯỢC KẾT QUẢ NHƯNG MỖI KẾT QUẢ ĐẠT ĐƯỢC CHẮC CHẮN LÀ CẢ MỘT QUÁ TRÌNH CỐ GẮNG”

JavaFX HTMLEditor lấy văn bản đang được chọn

Thứ ba - 12/03/2024 11:41

JavaFX HTMLEditor lấy văn bản đang được chọn

JavaFX HTMLEditor lấy văn bản đang được chọn

HTMLEditorGetSelectText

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.stage.Stage;
import javafx.scene.web.HTMLEditor;
import javafx.scene.web.WebView;
import javafx.scene.web.WebEngine;

import javafx.scene.control.Alert;
import javafx.scene.control.ToolBar;

public class HTMLEditorGetSelectText extends Application {

    String selection;

    @Override
    public void start(Stage primaryStage) {
        // Tạo một HTMLEditor
        HTMLEditor htmlEditor = new HTMLEditor();

        // Lấy toolbar của HTMLEditor
        ToolBar bar = (ToolBar) htmlEditor.lookup(".top-toolbar");
        if (bar != null) {
            // Tạo nút lệnh để chèn ảnh
            Button selectTextButton = new Button("Văn bản đang được chọn");
            selectTextButton.setDisable(true); // Ban đầu, nút sẽ bị tắt

            WebView webView = (WebView) htmlEditor.lookup(".web-view");
            WebEngine webEngine = webView.getEngine();

            // Thêm sự kiện cho WebView khi có văn bản được chọn
            webView.setOnMouseReleased(event -> {
                selection = webEngine.executeScript("window.getSelection().toString()").toString();
                if (selection.isEmpty()) {
                    selectTextButton.setDisable(true);
                } else {
                    selectTextButton.setDisable(false);
                }
            });

 webView.setOnKeyReleased(event -> {
                // Xử lý khi người dùng nhấn phím
                selection = webEngine.executeScript("window.getSelection().toString()").toString();
                if (selection.isEmpty()) {
                    insertLinkButton.setDisable(true);
                } else {
                    insertLinkButton.setDisable(false);
                }
            });

            selectTextButton.setOnAction(event -> {
                Alert alert = new Alert(Alert.AlertType.INFORMATION);              
                alert.setHeaderText("Lấy văn bản đang chọn");
                alert.setTitle("HTMLEditor SelectText");
                alert.setContentText("Văn bản đang được chọn là: " + selection);
                alert.show();
            });

            // Thêm nút vào ToolBar
            bar.getItems().add(selectTextButton);
        }

        // Tạo Scene và hiển thị
        Scene scene = new Scene(htmlEditor, 800, 600);
        primaryStage.setScene(scene);
        primaryStage.setTitle("HTMLEditor với chèn ảnh");
        primaryStage.show();
    }

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

Kết quả:

 

Tác giả: Vàng Văn Quyn

Tổng số điểm của bài viết là: 0 trong 0 đánh giá

Click để đánh giá bài viết
Thống kê
  • Đang truy cập13
  • Hôm nay2,544
  • Tháng hiện tại83,632
  • Tổng lượt truy cập9,175,175
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây