Introduction
Throughout the earlier chapters of this book, we looked at many individual components and features provided by the wxPython library. There is a large amount of functionalities provided through the standard components of the library; however, as your applications and skills mature, you will undoubtedly begin to recognize the need for additional functionalities or behaviors to enhance your applications.
In this chapter, we will explore some approaches to building new advanced controls from existing components as well as creating our own new components from scratch in order to handle new use cases and provide additional features in our applications that wxPython does not provide out of the box.