A pop-up menu is exactly as the name implies: a menu that appears arbitrarily. It is accessed via a user action (normally a mouse click). The menu is created as normally, but is accessed by binding to an event. The actual display of the menu is accomplished by the tk_popup
command.
The syntax is as follows:
tk_popup name x y
In the following example, we will create a menu that contains an option to exit a window. Create the following text file and save it in your working path with the name my_popup.tcl:
# Load the TK Package package require Tk #Define our interface wm geometry . 320x240 wm title . "Menu Example" # Create a menu to exit our window set File [menu .popup] # Add the Exit entry $File add command -label Exit -command exit # Now we add a label to bind to label .l -text "Click here to access your menu" pack .l # Now bind to the right mouse click bind .l <3> {tk_popup .popup %X %Y}
Now launch the program by invoking the following command line command.
tclsh85 my_popup.tcl
You should now see the following window after you right-click on the label:
Click on the label to access your pop up menu and select the Exit option to close the window.
By binding the right mouse click to the label we have displayed a pop up menu. Bear in mind that specific platform differences may exist for example between Windows and the MacOS X platforms. The %X
and %Y
are returned by the mouse click event and the upper-left-hand side corner of the pop up is positioned at this location. To remove the menu from the display without invoking a menu
command, you simply click on any area of the window.
18.118.12.157