Cristian
Cristian

Reputation: 374

How can I position a menu to the right in a menubar

I have a top menu in a menu bar like so: Income Expenses Users. I tried to put Users on the far right of the menu bar without success I used border pane. Is there a way to put first two menus as float left and the third menu floated to the right ?

Income Expenses Users

public class Budget extends Application {

Stage window;
BorderPane layout;


@Override
public void start(Stage primaryStage) {
    window = primaryStage;
    window.setTitle("First stage");

    Menu income = new Menu("Income");
    Menu expense = new Menu("Expense");
    Menu users  = new Menu ("Users");


    MenuItem addIncome = new MenuItem("Add Income..");

    income.getItems().add(addIncome);
    income.getItems().add(new MenuItem("List All Incomes"));

    expense.getItems().add(new MenuItem("Add Expense..."));
    expense.getItems().add(new MenuItem("List All Expenses"));

    users.getItems().add(new MenuItem("Switch User"));
    users.getItems().add(new MenuItem("Log In"));
    users.getItems().add(new MenuItem("Log Off"));

    MenuBar menuBar = new MenuBar();
    menuBar.getMenus().addAll(income, expense, users);


    layout = new BorderPane();
    layout.setTop(menuBar);
    Scene scene = new Scene(layout, 600, 400);

    //Scene scene = new Scene(grid, 600, 400);
    window.setScene(scene);
    window.show();

}

 /**
 * @param args the command line arguments
 */
public static void main(String[] args) {
    launch(args);
}

}

Upvotes: 0

Views: 1644

Answers (1)

Uluk Biy
Uluk Biy

Reputation: 49215

Use 2 different menubars, then put them into HBox. The left menubar will contain "Income" and "Expenses", while the right one will have "Users". Use HBox's alignment options.

Upvotes: 1

Related Questions