के साथ कहीं भी माउस ईवेंट को संभालें मेरे पास जावाएफएक्स एप्लीकेशन है, और मैं दृश्य के भीतर कहीं भी माउस क्लिक के लिए इवेंट हैंडलर जोड़ना चाहता हूं। निम्नलिखित दृष्टिकोण ठीक काम करता है, लेकिन जिस तरह से मैं चाहता हूं बिल्कुल ठीक नहीं। यहाँ समस्या को वर्णन करने के एक नमूना है:JavaFX
public void start(Stage primaryStage) {
root = new AnchorPane();
scene = new Scene(root,500,200);
scene.setOnMousePressed(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent event) {
System.out.println("mouse click detected! "+event.getSource());
}
});
Button button = new Button("click here");
root.getChildren().add(button);
primaryStage.setScene(scene);
primaryStage.show();
}
अगर मैं खाली जगह में कहीं भी क्लिक करें, EventHandler
invokes handle()
विधि है, लेकिन अगर मैं button
क्लिक करें, handle()
विधि लागू नहीं है। मेरे आवेदन में कई बटन और अन्य इंटरैक्टिव तत्व हैं, इसलिए मुझे उन तत्वों पर क्लिक पकड़ने के लिए एक दृष्टिकोण की आवश्यकता है, साथ ही प्रत्येक तत्व के लिए मैन्युअल रूप से नया हैंडलर जोड़ने के बिना।
यह पूरी तरह से काम करता है! मैं अभी भी javafx के लिए नया हूँ, तो बहुत बहुत धन्यवाद –