Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Although subjectively the look on Windows 10 seems a bit better than on previous versions, it still feels a bit ancient. So you may ask what's the point: if you create a GUI in 2021 you will probably want it to look modern and attractive. Even a modern TUI interface may look better.


Tk and Ttk are essentially different toolkits with a similar API. There are some decent looking themes (ark, breeze, yaru, there's even a bootstrap port) and also some native themes for Ttk. I believe the native Windows theme is Win32. You likely don't want an UI backed by Win32 widgets, for various reasons (poor performance, looks kind of bad, flicker/redraw issues, abandoned by MS).

I feel like desktop UIs on Windows have been in the state of "It hurts when I do this" - "Stop doing it then" for a number of years. "Just put everything in a web view" might actually be the best way to have a GUI on Windows nowadays, if you really need one, and otherwise you simply avoid having to run an application on Windows entirely whenever you can (=pure web app).


Do you happen to know a more modern GUI framework for Python?


Not an expert at all and can’t vouch for quality but there’s at least wxpython, pyqt, and wrappers of gtk, win32 and cocoa out there. There’s also a .net interop lib which might talk to windows libraries.

Many others exist, too. Most are wrappers of some C++ lib, like Qt etc. some wrap these wrappers again.


My take on these: Win32 gui is not modern, cocoa and gtk is not windows, pyqt is not free for commercial products,. Net interop in cpython is annoying, and until last year wxpython didn't work under python3. Wxpython might be worth looking at again though. (but then why not Tkinter)

Edit:anybody downvoting pls suggest a modern gui tool for python on desktop (which you hv experience with) . I need one and I have been looking. Using Tkinter now.


PySide. It's a Qt binding, under LGPL license. I used it for a fairly big project.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: