Comment programmer la barre de défilement pour passer en bas / haut en cas de changement dans la zone QPlainTextEdit ou QTextEdit?
Comment le programme de la barre de défilement pour sauter vers le bas/le haut en cas de changement de QPlainTextEdit ou QTextEdit région?
On dirait qu'il n'ont pas de fonction de contrôle.
source d'informationauteur falconium
QTextEdit et QPlainTextEdit sont à la fois héritée de QAbstractScrollArea. Le QAbstractScrollArea objet permet d'accéder à la barre de défilement à travers les verticalScrollBar() la méthode.
Ainsi, pour sauter vers le haut:
Et de sauter vers le bas:
Devrait fonctionner pour les deux QTextEdit et QPlainTextEdit.
Vous pouvez utiliser la ensureCursorVisible méthode:
Ce n'est pas une fente, cependant, de sorte que vous ne pouvez pas vous connecter à n'importe quel signal -- vous devrez créer quelque chose de vous-même que vous pouvez vous connecter à the void textChanged() du signal.
Avertissement: j'ai peut-être mal compris votre question -- je suppose que vous voulez faire défiler vers le bas quand un texte est annexé au texte.
Lorsqu'un contrôle d'édition de texte est redimensionné,
QWidget::resizeEvent
est appelé. Vous avez juste à remplacer cette fonction dans vos sous-classe, et d'appelerverticalScrollBar -> setValue (verticalScrollBar -> minimum())
(oumaximum()
).Ici je vais poster mes Solution comme ci-dessus, la solution de la force de travail dans mon cas.
Je veux obtenir le curseur au début de
QTextbrowser
.En utilisant QTextEdit::setTextCursorvous pouvez déplacer le curseur visible où vous voulez:
De l'espoir, il aidera à quelqu'un et d'économiser leur temps précieux.
J'ai fait en Pyqt.
auto.scrollArea.verticalScrollBar().rangeChanged.connect(self.change_scroll)
--------