Processing key events
The KeyEvent
events are generated in any control that accepts keyboard input when a user presses keys on a keyboard. There are three distinct events that occur for a single key press. In this recipe, we will use KeyEvents
to create a custom TextCtrl
control that can generate a dynamic input suggestion list similar to the suggestions that Google shows when one types into the search box.
How to do it…
You need to do the following:
- Firstly, for this recipe, we need to include a couple of other modules from the Python standard library, as follows:
from urllib import urlopen import re from abc import ABCMeta, abstractmethod import wx
- To make the control's suggestion provider extensible, we will first define a simple interface class that will be responsible for providing suggestion options. This is defined as an abstract base class:
class CompleterDataSource: __metaclass__ = ABCMeta @abstractmethod def getSuggestions(self, phrase): "...