menufather is a simple and lightweight python library for creating console-based menus (windows / linux) .
it can be installed using pip :
Linux : python3 -m pip install menufather
or Windows : pip install menufather
at first we declare our menu items in the "items" list as strings .
then we create a menu using menufather.Menu(title , items)
function . after that , we can show our menu using menu.show()
method.
- we should make a loop in our program .
- in our while loop we should use a sleep (ex : 0.5s sleep)
menu.get_selected_item()
can be used for getting the selected item by user . it returns the index of selected item in "items" list if user has selected an item else it returns None
once we get selected item by this function , the next round this function returns None until user selects another item so we should save the result of this function in a variable at the first of loop (selected
variable) .
the two methods menu.lock()
and menu.unlock()
, can lock or unlock the menu . when menu is locked , user can't navigate or select anything on it .
we can update an item in the menu using menu.updateItem(itemIndex , new)
. itemIndex
is the index of item in the "items" list that we want to update and new
is the string value we want to replace .
example : menu.updateItem(2 , "Contact")
. this changes item index 2 in the menu to "Contact" .
sometimes we want to have some items that can create a new menu when user selects that . menu.reCreate(new_title , new_items)
can do this . new_title
is the title of the new menu and new_items
is a list that contains the items of new menu .
after running this source , if we select "goto menu 2" item , a new menu appears (menu 2) ...
if your items are too many , don't worry ! menufather simulate a scrolling state for items !