[PyQt] A quick question about Return in a text edit (Evan Driscoll)

Evan Driscoll driscoll at cs.wisc.edu
Thu Dec 6 01:05:59 GMT 2012


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-request at 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 at riverbankcomputing.com
> http://www.riverbankcomputing.com/mailman/listinfo/pyqt



More information about the PyQt mailing list