package javafxmenu1;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Menu;
import javafx.scene.control.MenuBar;
import javafx.scene.control.MenuItem;
import javafx.scene.control.SeparatorMenuItem;
import javafx.scene.layout.BorderPane;
import javafx.stage.Stage;
/**
*
* @author Joko Adianto
*/
public class JavaFXMenu1 extends Application {
/*
Urut-urutan eksekusi berkenaan dengan eksekusi deklarasi, static var/refvar,
static initizialization block, var/refvar, initialization block, constructor
1. Inisialisasi Super class
2. Inisialisasi Static Var/RefVar dan Static Initialization Block
sesuai dengan urut-urutan Penulisan
3. Inisialisasi Non-Static Var/RefVar dan Non-Static Initialization Block
sesuai dengan urut-urutan Penulisan
4. Constructor
*/
/*
Deklarasi bermacam-macam reference variable yang menunjuk object :
1. MenuBar
2. MenuItem
3. Separator
*/
MenuBar menuBar1;
Menu mnuFile;
MenuItem mniNewProject;
MenuItem mniNewFile;
SeparatorMenuItem smiSeparator1;
MenuItem mniOpenProject;
Menu mnuOpenRecentProject;
SeparatorMenuItem smiSeparator2;
Menu mnuImportProject;
MenuItem mniEclipseProject;
MenuItem mniResychronizeEclipseProject;
MenuItem mniImportProjectFromZIP;
Menu mnuExportProject;
MenuItem mniToZIP;
{
menuBar1 = new MenuBar();
mnuFile = new Menu("File");
mniNewProject = new MenuItem("New Project");
mniNewFile = new MenuItem("New File");
smiSeparator1 = new SeparatorMenuItem();
smiSeparator2 = new SeparatorMenuItem();
mniOpenProject = new MenuItem("Open Project");
mnuOpenRecentProject = new Menu("Open Recent Project");
mnuOpenRecentProject.setDisable(true);
mnuImportProject = new Menu("Import Project");
mniEclipseProject = new MenuItem("Import Eclipse Project");
mniResychronizeEclipseProject = new
MenuItem("Resynchronize Import Eclipse Project");
mniImportProjectFromZIP = new MenuItem("Import from ZIP");
mnuImportProject.getItems().addAll(
mniEclipseProject,
mniResychronizeEclipseProject,
mniImportProjectFromZIP
);
mnuExportProject = new Menu("Export Project");
mniToZIP = new MenuItem("Export Project To ZIP");
mnuExportProject.getItems().add(mniToZIP);
/*
Letakkan menu item dan separator menu item kedalam container yang
cocok :
SeparatorMenuItem, Menu dan MenuItem diletakkan kedalam Menu
Menu diletakkan kedalam menuBar
*/
mnuFile.getItems().addAll(
mniNewProject,
mniNewFile,
smiSeparator1,
mniOpenProject,
mnuOpenRecentProject,
//Letakkan Menu yang memiliki Sub menu
smiSeparator2,
mnuImportProject,
mnuExportProject
);
menuBar1.getMenus().add(mnuFile);
}
@Override
public void start(Stage primaryStage) {
BorderPane root = new BorderPane();
root.setTop(menuBar1);
Scene scene = new Scene(root, 300, 250);
primaryStage.setTitle("Contoh Menu");
primaryStage.setScene(scene);
primaryStage.show();
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
launch(args);
}
}
No comments:
Post a Comment