2013-10-27 11 views
7

W projektancie po kliknięciu prawym przyciskiem myszy widżetu, a następnie klikam przycisk promuj, aby uzyskać to okno. Zobacz zrzut ekranu poniżej.Jak korzystać z promowania w Qt Designer w pyqt4?

Nigdy nie korzystałem z tej funkcji. Zasadniczo plik nagłówkowy mnie myli. Po co to jest? Czy to oznacza, że ​​mogę utworzyć nową klasę w tym przypadku, dziedzicząc QLineEdit i dodając do niej więcej metod? Co to jest promowana nazwa klasy?

Promote widget

+0

możliwie wtórnika [Promowanie PyQt widget] (http://stackoverflow.com/questions/4832695/promote-pyqt-widget) – ekhumoro

Odpowiedz

12

To pozwala na użycie niestandardowych widżety podane w innym miejscu, które projektant inaczej nie wiedzieć.

Na przykład, jeśli masz zdefiniowane widget MyLabel pochodzący z QLabel, a następnie można go zdefiniować tutaj i po prostu wstawić QLabel jako zastępczy w swoim interfejsie i promować go MyLabel.

UIC kompilator będzie wtedy zawierać niezbędne importu/obejmuje, na przykład, jeśli określony mypackage/mycomponent.h jako plik nagłówka i MyLabel jak nazwa klasy, a następnie pyuic doda

from mypackage.mycomponent import MyLabel 

(zauważ jak .h jest ignorowany, i ukośniki są konwertowane do . przez pyuic aby zachować zgodność z pytona)

Globalny zawierać jest ignorowany przez pyuic, to tylko wpływa uic (generowanielub #include <mypackage/mycomponent.h> C++)

+3

** Jest niezbadane czarny magiczne. ** QT (Creater | Designer) UX * naprawdę * musi wyraźnie potwierdzić istnienie innych języków innych niż C++. Konieczność określenia pliku nagłówkowego C++, którego filament rodzaju "pyuic" i "pysideuic" po cichu ignoruje, jest szczególnie niewybaczalna. –