[Qt] QTextTableCell read-only?
-
hi,
das folgende anliegen klingt selbst fuer mich relativ banal, allerdings konnte ich im assistant und via google/boardsuche nichts dazu finden:
was ich moechte, ist ein moeglichst einfacher weg, eine zelle in einem QTextTable (alles in einem QTextEdit) vor aenderungen durch den user zu schuetzen (-> read-only).Ist das moeglich, ohne gleich mit irgendeinem changed-event vom QTextEdit oder QTextDocument zu hantieren?
danke schonmal!
mfg,
julian
-
Was fertiges gibt es dazu nicht.
Allerdings sollte es eigentlich kein Problem sein das selber zu implementieren.Dazu würde ich einfach auf das cursorPositionChanged Signal von deinem QTextEdit reagieren.
Dieses wird immer dann ausgelöst, wenn sich die Position des Cursors im Editfeld ändert, egal ob durch reinschreiben, Mausklicks, oder bewegen mit den Pfeiltasten, usw..Im Slot dazu musst du ja dann nur noch überprüfen, ob die Position/Zelle, in der du gerade bist, beschrieben werden darf oder nicht.
Wenn nicht, setzt du das QTextEdit einfach auf readonly.
-
vielen dank fuer den vorschlag JustSomeCoder, so in etwa sah gewissermassen mein "notfallplan" aus.
ich habe es eben mal so implementiert und es funktioniert an sich gut, allerdings gibt es ein problem:
- beim navigieren innerhalb einer tabelle (sprich aenderung der cursorposition innerhalb einer zelle oder auch "springen" zwischen verschiedenen zellen einer tabelle) wird anscheinend kein cursorPositionChanged-signal emitted.
sprich, wenn man aus einer read-only in eine aenderbare zelle einer tabelle springt, kann man nicht reinschreiben, und andersrum.aber das sollte schon irgendwie behebbar sein - hoff ich ...
wenn ich fortschritte mache, poste ich hier.mfg,
julian