You need the API's GetMenu, GetSubMenu, and InsertMenuItem. That way you are not limited by the number of invisible menus you create at design time. However, it is not exactly a piece of cake to do, as you then need to subclass to receive the messages from the menus you just created, otherwise they will be useless.