Qt jest teraz wydany pod LGPL, polecacie go nad wxWidgets? [zamknięte]

Jestem dość ciężkim użytkownikiem wxWidgets, częściowo z powodów licencyjnych.

  • jak postrzegasz przyszłość wxWidgets w perspektywie niedawnej Zapowiedzi Qt, która jest obecnie wydawana na licencji LGPL?
  • Czy uważasz, że wxwidget jest nadal dobrym wyborem technicznym dla nowych projektów ? A może zaleciłbyś przyjęcie Qt, ponieważ będzie to standard de facto.
  • jestem również zainteresowany możliwymi konsekwencjami, jakie to będzie miało na ich wiązania z najczęściej spotykane języki skryptowe (np. PyQt, wxPython, wxRuby). Dlaczego PyQt jest tak mało używany, gdy ma profesjonalnego projektanta grade, A wxPython nie?

Powiązane:

Https://stackoverflow.com/questions/443546/qt-goes-lgpl-on-windows-is-it-good-enough-to-use-instead-of-mfc{[5]

Author: Mapad, 2009-01-21

7 answers

Dla tych z nas, którzy są przyciągani do wxWidgets, ponieważ jest to wieloplatformowa biblioteka, która używa natywnych kontrolek dla prawidłowego wyglądu i odczucia zmiana licencji Qt ma niewiele lub nie ma żadnych konsekwencji.

Edit:

Odnośnie

Qt nie posiada natywnych kontrolek, ale natywne funkcje rysowania

Pozwolę sobie zacytować wxWidgets strona wiki porównująca Zestawy narzędzi :

Qt nie ma prawdziwych portów natywnych jak wxWidgets. Co my oznacza to, że chociaż Qt rysuje je dość realistycznie, Qt rysuje własne widżety na każdej platformie. Warto jednak wspomnieć, że Qt jest wyposażony w specjalne style dla Mac OS X oraz Windows XP i Vista, które używają natywnych API (Menedżer wyglądu na Mac OS X, UxTheme na Windows XP) do rysowania standardowych prymitywów widżetów (np. pasków przewijania lub przycisków) dokładnie tak, jak każda natywna aplikacja. Obsługa zdarzeń, wynikająca z nich wizualna informacja zwrotna i układ widżetu są zawsze realizowane przez Qt.

 14
Author: mghie,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-01-29 10:22:04

Obecnie używam pyqt w pracy i jestem całkowicie zadowolony. Masz lepszą dokumentację (IMHO), lepsze zarządzanie zdarzeniami( wzór gniazda sygnału jest w jakiś sposób bardziej wydajny niż stary prosty styl wywołania zwrotnego), a importowanie niestandardowego widżetu do projektanta graficznego, takiego jak qt-designer, jest o wiele łatwiejsze. Z tego, co wiem, qt-designer jest potężniejszy niż jakikolwiek odpowiednik wxpython, jak Boa Constructor i pyGlade). Masz również świetne wsparcie dla tłumaczenia ciągów programu w różne języki (przynajmniej lepsze wsparcie niż wxlocale i możesz użyć narzędzia takiego jak Qt-Linguist, które jest w pełni zintegrowane z systemem qt).

Używam wxpythona w niektórych pracach hobbistycznych, ale nadal jestem tam noobem. Myślę, że jego większą przewagą nad pyqt jest natywny wygląd na różnych platformach. Jest to ogromny punkt, jeśli tworzysz aplikacje dla systemu windows/linux, na przykład. W rzeczywistości można użyć "skórki", aby uzyskać natywny wygląd z aplikacji windows-qt, ale Nie mam pojęcia jak to osiągnąć (sorry, nigdy nie używałem qt na windows :D).

 12
Author: Emiliano,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-02-05 10:29:34

Należy pamiętać, że od stycznia 2009 roku, podczas gdy Qt 4.5 miał być dostępny na licencji LGPL, Riverbank Computing nie ogłosił żadnych licencji na przyszłe wersje PyQt . PyQt jest nadal tylko komercyjny / GPLv2 / GPLv3 .

Jak zaznaczono w komentarzach do tej odpowiedzi, Nokia ogłosiła projekt na licencji LGPLPySide w sierpniu 2009 roku.

 8
Author: akaihola,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-09-04 10:04:05

Szczerze mówiąc, nie sądzę, aby ludzie masowo przełączyli się z WxWidgets.

Dla Pythona istnieją wiązania PyQt i wiązania wxPython. Pomimo tego, że Qt jest znacznie bardziej praktyczny niż wxWidgets, większość programów GUI python open source jest pisana za pomocą wxWidgets. Ponieważ te programy są open source, GPL vs LGPL nie miało większego znaczenia w wyborze zestawu narzędzi.

To samo dotyczy Gtk. Wiele aplikacji open source pisanych jest w Gtk, w systemie windows, mimo Gtk jest bardzo trudne do pracy w systemie windows. Z Qt aplikacje te byłyby o wiele łatwiejsze do utrzymania na różnych platformach, ale tak się nie stało.

Wybór zestawu narzędzi zależy więc od wielu parametrów, przy czym licencje są tylko jednym z nich.

Nadal nie rozumiem, dlaczego Qt nie jest bardziej mainstreamowe, ponieważ jest moim zdaniem najprostszym i bardziej praktycznym zestawem narzędzi GUI, jaki kiedykolwiek napisano.

 6
Author: Bluebird75,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-01-21 21:12:09

Qt jest bardzo wszechstronnym i wysokiej jakości frameworkiem. Jestem pewien, że wiele nowych projektów, które użyłyby wxWidgets, będzie teraz używać LGPL Qt. Ale projekty, które już używają wxWidgets, bez wątpienia będą nadal używać wxWidgets, zamiast robić masowe ponowne zapisywanie.

 3
Author: Andy Brice,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-01-21 10:12:35

Wybrałem wxPython z 2 głównych powodów:

  1. Konstruktor Boa, który jest nadal produktem beta, daje mi zunifikowaną kontrolę nad 100% procesu, podczas gdy PyQt rzeczywiście ma lepszego projektanta, ale nie ma związku między edycją "obsługi zdarzeń".

Moje idealne IDE projektuje, tworzy zdarzenia, pozwala mi edytować tylko potrzebny kod funkcjonalny i uruchamiać; bez "kompilowania UIC" , bez przełączania edytorów, bez wchodzenia w linię poleceń. Podczas gdy dla zastosowań na dużą skalę to sprawy bardzo mało, moja obecna domena to szybkie i małe programy.

  1. Licencjonowanie... to nie ma teraz znaczenia, ale będzie, gdy zacznę sprzedawać moje rzeczy na małą skalę.

  2. Autocompletion inside event functional code wydaje się nie działać w QTDesigner, dla kodu zdarzenia. Może mi czegoś brakuje, ale opisany powyżej proces "zepsuty" uniemożliwia mu bycie radem.

 2
Author: Berry Tsakala,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-03 12:31:50

Nigdy nie byłem w stanie skonfigurować Qt do kompilacji krzyżowej. Pamiętam, że widziałem coś z Trolltech mówiącego, że oficjalnie nie obsługują kompilacji krzyżowej, chociaż nie mogę jej teraz znaleźć.

Jest wiele przewodników i takich szczegółowych informacji jak zmusić Qt do krzyżowej kompilacji, więc możliwe (prawdopodobne), że robiłem coś złego.

Wybierając framework, zalecam rozważenie i przetestowanie ich zdolności kompilacji krzyżowej.

 1
Author: Matthew,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-08-11 09:11:32