public TestNoScreenMenuBar()
{ try {
robot = new Robot();
robot.setAutoDelay(50);
} catch (AWTException ex) { thrownew RuntimeException(ex);
}
// activate another java application
openOtherApplication();
robot.delay(2000);
// The failure mode is installing the default menu bar while the application is inactive
Desktop desktop = Desktop.getDesktop();
desktop.setDefaultMenuBar(createMenuBar());
JMenuBar createMenuBar()
{
JMenuBar mb = new JMenuBar(); // A very long name makes it more likely that the robot will hit the menu
JMenu menu = new JMenu("TestTestTestTestTestTestTestTestTestTest");
mb.add(menu);
JMenuItem item = new JMenuItem("TestTestTestTestTestTestTestTestTestTest");
item.addActionListener(ev -> {
isActionPerformed = true;
});
menu.add(item); return mb;
}
privatevoid performMenuItemTest()
{ // Find the menu on the screen menu bar // The location depends upon the application name which is the name of the first menu. // Unfortunately, the application name can vary based on how the application is run. // The work around is to make the menu and the menu item names very long.
int menuBarX = 250; int menuBarY = 11; int menuItemX = menuBarX; int menuItemY = 34;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.