Live data from Hacker News

Show HN: Cross-platform desktop applications with PyQT

github.com

11–20 of 293 posts

Re: Show HN: Cross-platform desktop applications with PyQT

#11
post #4

The main problem with "other toolkits" vs Electron apps is that they are not as simple to use in order to create a very good looking UIs. Compare how easy it is to use HTML and CSS in order to create a very complex UIs with all sort of effects vs how utterly complicated is to override, let's say, Qt's ::paint() method in order to achieve rich text inside a label. Let me repeat it. Rich text inside a label. Such a sim…

I agree that HTML/CSS is easier to use, though maybe some of that is just because everybody has been using them for years. However, you certainly don't have to override ::paint() to get rich text inside a label. You can use a simple subset of HTML in your QLabel to get various text effects.

Please read in between lines... I could easy write any other example. Don't make me compare HTML/CSS's flexibility with Qt's...

Re: Show HN: Cross-platform desktop applications with PyQT

#13
post #10
post #4

The main problem with "other toolkits" vs Electron apps is that they are not as simple to use in order to create a very good looking UIs. Compare how easy it is to use HTML and CSS in order to create a very complex UIs with all sort of effects vs how utterly complicated is to override, let's say, Qt's ::paint() method in order to achieve rich text inside a label. Let me repeat it. Rich text inside a label. Such a sim…

Are you aware of QML, which is part of the Qt framework? https://en.m.wikipedia.org/wiki/QML

Yep, came here to say that. QML is absolutely great for making UIs, in fact I wish we could use it for the web, too.

Re: Show HN: Cross-platform desktop applications with PyQT

#14
post #3

Not directly related to the initiative itself, but comparing and contrasting the Electron website vs. PyQT is striking: https://riverbankcomputing.com/software/pyqt/intro https://electronjs.org/ I've been a (proud) Pythonist for years now, and I've always been a bit chagrined by the quality of the "marketing" of Python projects. It doesn't at all reflect the quality of the community and the projects.

I agree... and I think there is a similar POV when looking at the results of tkinter and an Electron app. The visuals alone are worth it... let alone the ease of development and packaging.

Re: Show HN: Cross-platform desktop applications with PyQT

#15
post #4

The main problem with "other toolkits" vs Electron apps is that they are not as simple to use in order to create a very good looking UIs. Compare how easy it is to use HTML and CSS in order to create a very complex UIs with all sort of effects vs how utterly complicated is to override, let's say, Qt's ::paint() method in order to achieve rich text inside a label. Let me repeat it. Rich text inside a label. Such a sim…

The other issue is that a lot of these sorts of applications like Slack started life as a web app. In that case, your options are use Electron or build a new desktop application from the ground up.

Some of the same applications are also cross-targeting mobile with Cordova, and/or are already or are working to become PWAs.

Re: Show HN: Cross-platform desktop applications with PyQT

#16
> In simple terms, this means you can use it for free in open source projects that are also licensed under the GPL

That's not really what being licensed under the GPL means.

PC-BSD thought that they had to license their own stuff under the GPL because they were using Qt, but all you need is GPL compatibility. After that realisation, PC-BSD relicensed their code to 3-clause BSD.

Re: Show HN: Cross-platform desktop applications with PyQT

#17
post #4

The main problem with "other toolkits" vs Electron apps is that they are not as simple to use in order to create a very good looking UIs. Compare how easy it is to use HTML and CSS in order to create a very complex UIs with all sort of effects vs how utterly complicated is to override, let's say, Qt's ::paint() method in order to achieve rich text inside a label. Let me repeat it. Rich text inside a label. Such a sim…

How is this an issue? Before Electron and other HTML/CSS-based "native" apps became all the rage (which is fairly recently), native apps were built using Qt, GTK, Cocoa, WPF, WinForms, MFC, etc., and they did just fine. Perhaps we just really don't need these "effects" and just need consistent, simple UIs of the sort that toolkits that paint native widgets can give you. Whenever I install an app that's built using something like Electron (which is immediately obvious once the app launches), I know I'm in for a sub-par experience.

Re: Show HN: Cross-platform desktop applications with PyQT

#18
post #10

Earlier quoted context omitted.

Are you aware of QML, which is part of the Qt framework? https://en.m.wikipedia.org/wiki/QML

Yep, came here to say that. QML is absolutely great for making UIs, in fact I wish we could use it for the web, too.

Be careful what you wish for. https://github.com/qmlweb/qmlweb

Re: Show HN: Cross-platform desktop applications with PyQT

#19

Earlier quoted context omitted.

I agree that HTML/CSS is easier to use, though maybe some of that is just because everybody has been using them for years. However, you certainly don't have to override ::paint() to get rich text inside a label. You can use a simple subset of HTML in your QLabel to get various text effects.

Please read in between lines... I could easy write any other example. Don't make me compare HTML/CSS's flexibility with Qt's...

If you really need the full flexibility of HTML/CSS, you can just use QtWebKit and embed a webview in your UI.

Re: Show HN: Cross-platform desktop applications with PyQT

#20
post #10
post #4

The main problem with "other toolkits" vs Electron apps is that they are not as simple to use in order to create a very good looking UIs. Compare how easy it is to use HTML and CSS in order to create a very complex UIs with all sort of effects vs how utterly complicated is to override, let's say, Qt's ::paint() method in order to achieve rich text inside a label. Let me repeat it. Rich text inside a label. Such a sim…

Are you aware of QML, which is part of the Qt framework? https://en.m.wikipedia.org/wiki/QML

Yes. QML is a step in the right direction, but the syntax is kind of awkward, and you still need C++ on the background, which makes it harder to use, more expensive (in terms of man/hours cost) and slower to develop than + HTML/CSS.
Post reply on HN