QTk offers a specific support to let users expand the widget database: aliases. To avoid name clash problems, aliases cannot be defined with the default QTk builder, the application has to ask a new one (see the example).

Aliases can be defined in 3 different ways: 
- Aliases as records that define shortcuts to default values. Note how QTk looks define a single default set of parameters for each different type of widgets in a local area of the window, while aliases define several sets of parameters for possibly the same type of widget and for the entirety of the window. 
- Aliases as functions that are applied at the widget construction time. When the tdl widget is found during the window construction process in the example, the function defined by the alias is called with the record describing the widget as parameter. The window construction process resumes by substituting the alias by the result of the function call. Note that the actual parameter given to the alias function may be different from the record in the window declaration as QTk automatically appends look information.
- Aliases as classes. This method is an enhanced version of the previous one. The constructor method of the class must have the name of the alias, and it is called with the actual record used in the window declaration with an added parameter: QTk.qTkDesc. This parameter defines the substitution record to use instead of the alias. Note that using classes, the following parameters are automatically managed and must not be taken into account: handle, feature, glue. handle parameters are bound to the instance of the alias class created as if this class was a regular QTk widget class.

