What are the theming capabilities of wxPython?

I was originally using Kivy for an application, but gave up when I couldn’t find much support for an issue I ran into. I switched to wxPython because it seems to have much more support, but the capabilities of the UI seem a bit limited, visually. Is it possible to create a “dark theme” app? Change font sizes on controls? I can’t find a lot of info the the visual capabilities or a lot of examples. I’m hoping some people in the community will be able to help me figure this out.

but the capabilities of the UI seem a bit limited, visually

WxPython isn’t limited visually per-se, it’s just that you have to do more work if you want a non-native look as wxpython uses “Native widgets” based on your platform.

Basically, with wxPython you will need to create a custom widgets yourself according to the style you’re looking for.

There are “Pure-Python” widgets in the wx.lib folder of wxpython that you can use as examples. You can also take a look at wxPythonPit Libs - wxPyWiki for some widgets and libraries others (and myself) have made.

Is it possible to create a “dark theme” app?

Yes, as long as your willing to put the work into it. :grin:

This is what I’ve been able to do so far with 100% wxpython (about 60-70% custom-made widgets):

Change font sizes on controls?

Yes, though it is limited in some cases, many of the widgets have a SetFont method which changes the font.

I can’t find a lot of info the the visual capabilities or a lot of examples.

The wxpython demo is a great place to start. Then you can start looking at other people’s applications and see how they do things.

I few examples that helped me can be found at wxPython Screenshots | wxPython and wxPythonPit Apps - wxPyWiki. You are also welcome to look at the source for Gimel Studio (my application shown above).

Basically, your answer is: Yes, but your going to need to do some work (which should be expected, really). :wink:

it seems to have much more support

If you have any questions feel free to ask. If I can’t answer something, @Robin or the other wxpython folks usually can! :blush:

1 Like

Hello,
try these links :

Button

Frame - 1
Frame - 2
Frame - 3
Frame - 4
Frame - 5
Frame - 6

Menu

Link - 1
Link - 2
Link - 3

Have a nice day ! :smiley: :wink: