from logging import Handler, getLogger class ListboxHandler(Handler): ''' log to the message window ''' def __init__(self, box): self._box = box Handler.__init__(self) def emit(self, record): r = self.format(record) self._box.insert(0, r) # quick test: target = [] # supports insert like Listbox :) rootLogger = getLogger() # add handler to the root logger here # should be done in the config... rootLogger.addHandler(ListboxHandler(target)) rootLogger.warn('test') print(target)