2013-05-15 11 views
8

Jestem nowicjuszem do pyqt - obecnie używam go do wizualnej reprezentacji wykresu. Zrobiłem niestandardowy widget do tego, co było dość łatwe. Ale teraz utknąłem, gdy muszę korzystać z wbudowanej funkcjonalności.pyqt - jak zrobić textarea do pisania wiadomości do - trochę jak drukowanie na konsolę

chcę dodać „view” do mojego wniosku i móc wydrukować tekst do niej (trochę jak co dzieje się podczas drukowania do konsoli z nadrukiem („blablabla”))

Próbowałem użyć API pyqt odkryć co/jak but ..

http://pyqt.sourceforge.net/Docs/PyQt4/qtgui.html

zawiera 41 lekcji w formie tekstu + coś innego i żeby być w porządku nie mam pojęcia, do którego z nich korzystać?

więc jeśli ktoś może wskazać mi, który z nich, a jeśli masz czas, w jaki sposób używać go do celów chcę, że będą mile widziane ^^

Odpowiedz

21

Najprościej byłoby użyć QTextEdit, prawdopodobnie ustawiono go tylko do odczytu przez setReadOnly() i dołączał tekst za pomocą metody append() lub insertPlainText(). I mniej więcej używane coś jak następuje w podobnym przypadku użycia:

podstawowe urywek:

... 
logOutput = QTextEdit(parent) 
logOutput.setReadOnly(True) 
logOutput.setLineWrapMode(QTextEdit.NoWrap) 

font = logOutput.font() 
font.setFamily("Courier") 
font.setPointSize(10) 

theLayout.addWidget(logOutput) 
... 

dołączyć tekst w dowolnym kolorze do końca obszaru tekstu i automatyczne przewijanie pola tekstowego tak, że nowy tekst jest zawsze widoczny, można użyć coś jak

Automatic Scroll urywek:

... 
logOutput.moveCursor(QTextCursor.End) 
logOutput.setCurrentFont(font) 
logOutput.setTextColor(color) 

logOutput.insertPlainText(text) 

sb = logOutput.verticalScrollBar() 
sb.setValue(sb.maximum()) 
... 
Powiązane problemy