On 12/04/2012 09:38 AM, David Cortesi wrote:
This type of question is better addressed to the Qt fora,
see qt-project.org/forums. That said...

You definitely can monitor all keystrokes using keyPressEvent.
You will likely find other reasons for doing so besides shift-enter,
for example you might trap ^f to implement find.

A whole lot of stuff comes through keyPressEvent, write a
simple one first that just prints the event's members out to the
console to get an idea. You will get very familiar with the key enum
in the Qt namespace.

Also for entering "newline"? In Q[Plain]TextEdit, you want to insert
the Unicode para separator, \u2029. Not \n.

Also, get Summerhill's book if you don't have it.

Thank you (and Detlev) for your responses!

EVan






On Tue, Dec 4, 2012 at 4:00 AM,  <pyqt-requ...@riverbankcomputing.com> wrote:

 From what I can tell, I want to use a QPlainTextEdit. I don't think a
QLineEdit will work because I will sometimes need multiple lines, but
they'll arise in ways other than the user pressing enter. (Again, think
about Pidgin: enter sends a message, shift-enter adds a newline.)

Looking at the signals that are available, I don't see one that says
what key has been pressed. I might be able connect a slot to
textChanged() then do something like figure out what the cursor is and
then look at the preceding character or something like that, but it
seems much better to create a subclass of QPlainTextEdit and override
the keyPressEvent() (or maybe keyReleaseEvent()?) function.
_______________________________________________
PyQt mailing list    PyQt@riverbankcomputing.com
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

_______________________________________________
PyQt mailing list    PyQt@riverbankcomputing.com
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Reply via email to