1 import javafx.application.Application;
2 import javafx.scene.Scene;
3 import javafx.scene.control.ContextMenu;
4 import javafx.scene.control.MenuItem;
5 import javafx.scene.image.ImageView;
6 import javafx.scene.layout.Pane;
7 import javafx.stage.Stage;
8
9 public class ContextMenuDemo extends Application {
10 @Override
11 public void start(Stage primaryStage) {
12 ContextMenu contextMenu = new ContextMenu();
13 MenuItem menuItemNew = new MenuItem("New",
14 new ImageView("image/new.gif"));
15 MenuItem menuItemOpen = new MenuItem("Open",
16 new ImageView("image/open.gif"));
17 MenuItem menuItemPrint = new MenuItem("Print",
18 new ImageView("image/print.gif"));
19 MenuItem menuItemExit = new MenuItem("Exit");
20 contextMenu.getItems().addAll(menuItemNew, menuItemOpen,
21 menuItemPrint, menuItemExit);
22
23 Pane pane = new Pane();
24 Scene scene = new Scene(pane, 300, 250);
25 primaryStage.setTitle("ContextMenuDemo");
26 primaryStage.setScene(scene);
27 primaryStage.show();
28
29 pane.setOnMousePressed(
30 e -> contextMenu.show(pane, e.getScreenX(), e.getScreenY()));
31
32 menuItemNew.setOnAction(e -> System.out.println("New"));
33 menuItemOpen.setOnAction(e -> System.out.println("Open"));
34 menuItemPrint.setOnAction(e -> System.out.println("Print"));
35 menuItemExit.setOnAction(e -> System.exit(0));
36 }
37
38
43 public static void main(String[] args) {
44 launch(args);
45 }
46 }