Try to use
formatMenu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F, ActionEvent.CTRL_MASK));
EDIT: this won't work unless formatMenu is a JMenuItem; for JMenu, setting an accelerator seems not supported natively (at least i have not found any result). A workaround is to implement get/setAccelerator for a menu, like in this SO answer (there it's done for a submenu, but you can modify to suite your needs).
So just do something like the accepted answer there does:
JMenu formatMenu = new JMenu("Format Menu") {
private KeyStroke accelerator;
@Override
public KeyStroke getAccelerator() {
return accelerator;
}
@Override
public void setAccelerator(KeyStroke keyStroke) {
KeyStroke oldAccelerator = accelerator;
this.accelerator = keyStroke;
repaint();
revalidate();
firePropertyChange("accelerator", oldAccelerator, accelerator);
}
};
formatMenu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F, KeyEvent.CTRL_MASK));