RichTextCtrl - Auswahl einer Zeile bei Mausklick

Plattformunabhängige GUIs mit wxWidgets.
Antworten
hmueller
User
Beiträge: 39
Registriert: Montag 27. November 2006, 16:07
Wohnort: Linz, Oberösterreich

Hallo!

Ich habe das schon versucht zu implementieren, komme aber auf keinen grünen Zweig.

Wie implementiere ich das, damit folgendes funktioniert:

RichTextCtrl mit Text drin, wenn der User rechts klickt, wird die Zeile, auf die man geklickt hat, verarbeitet.
Also entweder markiert, oder noch besser einfach mit GetRange der Inhalt in eine Variable gegeben.

Ich habe derzeit eine einfach TextCtrl, in der das in etwa so geht:

Code: Alles auswählen

self.infoText = wx.TextCtrl(self, style=wx.TE_MULTILINE|wx.TE_READONLY|wx.TE_RICH2, size=(-1, 100))
# text reingeben

#event handler:
col = self.infoText.HitTest(event.GetPosition())[1]
text_pos = self.infoText.HitTestPos(event.GetPosition())[1]
line_text = self.infoText.GetRange(text_pos-col, text_pos-col+2000).split("\n")[0]
ich würde das gern etwas... besser machen, da der Code so jedenfalls nicht funktioniert mit dem RichTextCtrl, und bei der Gelegenheit werde ich ja vielleicht die Konstante (2000) los...

Danke schon mal für alle Hinweise!
I must not fear. Fear is the mind-killer. Fear is the little death that brings total obliteration.
I will face my fear. I will permit it to pass over me and through me. And when it has gone past I will turn the inner eye to see its path.
Antworten