作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
好吧,我正在做一个 Goto Line System。但它似乎不起作用。以前是这样,但我想我把它弄坏了。
void ScriptWindow::gotoLine()
{
int line = QInputDialog::getInteger(myEdit, "Line Number","To what line do you want to go?", 1, 1, myEdit->document()->lineCount());
QTextCursor cursor = myEdit->textCursor();
myEdit->setTextCursor(cursor);
cursor.setPosition(QTextCursor::Start, QTextCursor::MoveAnchor);
while(cursor.position() == QTextCursor::Start) {
cursor.setPosition(line - 1, QTextCursor::MoveAnchor);
}
}
你能告诉我我做错了什么吗?
最佳答案
将光标位置设置为零,向下移动行数,并设置 myEdit 的文本光标。
QTextCursor cursor = myEdit->textCursor();
cursor.setPosition(0);
cursor.movePosition(QTextCursor::Down, QTextCursor::MoveAnchor, line-1);
myEdit->setTextCursor(cursor);
或者,通过 QTextDocument 找到位置,然后设置位置。
int pos = myEdit->document()->findBlockByLineNumber(line-1).position();
QTextCursor cursor = myEdit->textCursor();
cursor.setPosition(pos);
myEdit->setTextCursor(cursor);
关于c++ - Qt Creator 中的 Gotoline,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5128139/
好吧,我正在做一个 Goto Line System。但它似乎不起作用。以前是这样,但我想我把它弄坏了。 void ScriptWindow::gotoLine() { int line =
我是一名优秀的程序员,十分优秀!