t = wx.StaticText(self, -1, "PopupMenu")
         t.SetFont(bf)
         box.Add(t, 0, wx.CENTER|wx.ALL, 5)
-        self.Bind(wx.EVT_RIGHT_UP, self.OnRightClick)
-
 
         box.Add(wx.StaticLine(self, -1), 0, wx.EXPAND)
         box.Add((10,20))
         t = wx.StaticText(self, -1, text)
         t.SetFont(nf)
         box.Add(t, 0, wx.CENTER|wx.ALL, 5)
+        t.Bind(wx.EVT_CONTEXT_MENU, self.OnContextMenu)
 
         self.SetSizer(box)
 
-        self.Bind(wx.EVT_RIGHT_UP, self.OnRightClick)
+        self.Bind(wx.EVT_CONTEXT_MENU, self.OnContextMenu)
 
 
-    def OnRightClick(self, event):
-        self.log.WriteText("OnRightClick\n")
+    def OnContextMenu(self, event):
+        self.log.WriteText("OnContextMenu\n")
 
         # only do this part the first time so the events are only bound once
         #
         menu = wx.Menu()
         # Show how to put an icon in the menu
         item = wx.MenuItem(menu, self.popupID1,"One")
-        item.SetBitmap(images.getSmilesBitmap())
+        bmp = images.getSmilesBitmap()
+        item.SetBitmap(bmp)
         menu.AppendItem(item)
         # add some other items
         menu.Append(self.popupID2, "Two")
 
         # Popup the menu.  If an item is selected then its handler
         # will be called before PopupMenu returns.
-        self.PopupMenu(menu, event.GetPosition())
+        self.PopupMenu(menu)
         menu.Destroy()