2014-06-24 67 views
2

在文本区:禁用自动滚动TextArea中

TextArea 
{ 
    id: outputText 
    readOnly: true 
    anchors.fill: parent 
} 

当我附上文字

outputText.append("someText") 

文本区域自动滚动至底部。

有没有办法关闭自动滚动?

感谢, 斯科特

回答

0

不知道如何禁用滚动,但视图就会留在上面,如果你更换..

outputText.append(msg) 

与..

outputText += msg 
0

如果你看textArea码源:

https://qt.gitorious.org/qt/qtquickcontrols/source/73afeab85fea60e2ce3f19b47becffc1e45a7165:src/controls/TextArea.qml#L420-433

你会看到附加功能做:

function append (string) { 
    edit.append(string) 
    __verticalScrollBar.value = __verticalScrollBar.maximumValue 
} 

所以,如果你总是希望滚动条待涨,你可以添加:

outputText.__verticalScrollBar.value = outputText.__verticalScrollBar.minimumValue 

但是如果你想滚动在添加文本时要准确地保留它的位置,应该这样做:

outputText.text += (outputText.text ? "\n" : "") + "someText";