2013-08-14 1 views
5

У меня есть редактируемый QWebView и хотелось бы получить позицию (QPoint) TextCursor. Я искал, но мог только найти позицию курсора (указатель мыши) webview-> cursor.pos(); и эта позиция не то, что я хочу.Как получить позицию текстового курсора в QWebView Editable

У кого-нибудь есть предложения?

Спасибо!

+0

Итак, что вам нужно? QPoint? Хорошо. Глобальный? Местный? Локальный для какого виджета? Возможно, вы даете небольшое объяснение, что вы хотите сделать. Я не могу придумать какой-либо прецедент, которому нужна позиция QPoint для TextCursor. – Greenflow

+0

Итак, у меня есть редактируемый QWebView и точная позиция TextCursor (Qpoint) в WebView для установки в качестве центра при реализации ZOOM, например WordPad (MS Windows). – FelipeMac

+0

Я вижу. Я не думаю, что это возможно. QTextCursor не является графическим элементом с определенной позицией на экране. Это логическая позиция в тексте. То, что вы хотите сделать, идентично найти положение экрана разрыва между двумя буквами в тексте. Для этого нет легкой функции. Подсчет пикселей с использованием параметров шрифта, вероятно, слишком сложный и подвержен ошибкам. – Greenflow

ответ

4

Решенные, чтобы поймать QPoint TextCursor в редактируемом QWebView используются:

webview->page()->inputMethodQuery(Qt::ImMicroFocus).toRect().center() 

(например: центр())

Спасибо тем, кто помог мне!