問題タブ [qtextcursor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
19740 参照

c++ - QTextEdit内でカーソルを移動する

QTextEditと呼ばれるフォームがありtranslationInputます。ユーザーに編集機能を提供しようとしています。

これQTextEditには、HTML形式のテキストが含まれます。「太字」、「斜体」などのボタンのセットがあり、対応するタグをドキュメントに追加する必要があります。テキストが選択されていないときにボタンが押された場合、たとえば、タグのペアを挿入したいだけです<b></b>。一部のテキストを選択した場合、タグを左右に表示したいと思います。

これは正常に機能します。ただし、カーソルを終了タグの前に配置したいので、ユーザーはカーソルを手動で再配置しなくても、新しく追加されたタグ内に入力し続けることができます。デフォルトでは、カーソルは新しく追加されたテキストの直後に表示されます(したがって、私の場合は、終了タグの直後に表示されます)

イタリックボタン用のコードは次のとおりです。

ただし、最後の行は何も実行せず、カーソルは移動しません。これは、すべての操作が正常に完了したことを意味しますmovePosition()true

QTextCursor::PreviousCharacterまた、の代わりにこれを実行してみましQTextCursor::Leftた。フォーカスを編集に戻す前後に移動してみましたが、何も変わりません。

だから問題は、どうすればカーソルを自分の中に移動させることができるかということQTextEditです。

0 投票する
1 に答える
406 参照

python - Python / C ++、PyQt4 / Qt4:QTextTableのセルに複数行のテキストを挿入する方法

PyQt4を使用してodtドキュメントを作成しようとしています。このドキュメントには、セルに複数行のテキストを挿入することが含まれます。私のサンプルコード:

「1行目」と「2行目」を同じセルに入れたいのですが、改行のために異なるセルにあります。これも上記のコードと同じ効果がありました。

0 投票する
1 に答える
2207 参照

c++ - qtexteditで列番号を取得するには?

QTextEdit でカーソルの行番号を取得できます。しかし、列番号情報を取得することはできません。(注: 行番号情報を取得するときに QTextBlock を使用します。) 列番号を取得する簡単な方法はありませんか? 私は何をすべきか?私はここここを読んでいますが、 QTextBlock クラスはまだ私を混乱させています。

0 投票する
1 に答える
1170 参照

qt - QTextCursor と beginEditBlock

QPlainTextEdit に、すべての行が 10 個のスペースで始まるテキストがあります。

次に、いくつかの行を選択し、ループで選択したすべての行から最初の 2 つのスペースを削除します。

問題は、上記のコードが最後に選択された行を「損傷」することです-まるである種の行末マーカーを削除したかのように-最後の行の終わりにジャンプしたいとき、カーソルはその下の行に移動します。 1番目と2番目のキャラクター。編集後、選択範囲でさえ正しく表示されません。最後の行を除くすべての行で選択インジケーターがウィンドウの右端まで拡張され、最後の行のインジケーターは行と同じ幅しかありません。

削除するbeginEditBlock()と、endEditBlock()すべて正常に動作します。

なぜこれが起こっているのか誰か知っていますか?

0 投票する
1 に答える
5172 参照

qt - Qt は QTextDocument の CSS を無視します

これが私のコードの小さなスニペットです。理由はわかりませんが、Qt は css を無視しています。

Qt 4.8 を使用しています。

0 投票する
1 に答える
3697 参照

qt - QLineEdit カーソルは、textChanged() または commitData() の後に末尾に移動します

をエディター デリゲートとしてQTableView使用する 1 つの列と、ユーザーが に入力するときに動的に更新する必要がある他の列があります(たとえば、列の 1 つは に入力されたテキストの長さを含み、ユーザーとして更新する必要があります)。 Enter を押してコミットするのを待たない)。QLineEditQLineEditQLineEdit

私はこのコードを使用しました:Qt:編集が完了した後ではなく、QTableViewアイテムデータが編集されている間にシグナルを送信しますか?これは主に機能します。QLineEdit textChanged()信号をエディターの信号に接続しcommitData()ます。

このコードの問題は、ユーザーが入力すると、QLineEditの挿入カーソルが常に末尾にジャンプすることです。行末にテキストを追加する場合は問題ありません。しかし、ユーザーが行の途中でテキストを挿入または編集したい場合、1 文字を入力するたびに、テキスト挿入カーソルがQLineEdit. 各キーストロークの後、途中で挿入/編集を完了するために、カーソルの位置を変更する必要があります。

マッパーを無効にすると、カーソルがジャンプしないため、エディター デリゲートに固有のものではありません。上記のリンクされた質問のコードを使用した場合にのみ発生します。

QLineEdit textChanged()とのコードを見ましたcommitData()が、カーソルが の最後にジャンプする原因がわかりませんQLineEdit。何か案は?ありがとう!

0 投票する
1 に答える
1230 参照

qt - QTextCursor::insertImage の解決の問題 ( const QImage & image, const QString & name = QString() )

QTextDocument 内に QImage を挿入し、PDF ファイルとして保存したいと思います。これを行うには、 QTextCursor::insertImage ( const QImage & image, const QString & name = QString() ) メソッドを使用しますが、画像はピクセル化されています。同じ画像と QTextCursor::insertImage ( const QTextImageFormat & format, QTextFrameFormat::Positionalignment ) メソッドを使用すると問題ありません。

以下に例を示します。

これは、私の QTextDocument への QTextImageFormat 挿入と QImage 挿入の違いを示すスクリーン キャプチャです。 結果のドキュメント 画像は上記のコードに正確には対応していません。

ありがとう

0 投票する
1 に答える
1126 参照

qt - QWebView Editableでtextcursorの位置を取得する方法

II は編集可能な QWebView を持っており、TextCursor の位置 (QPoint) を取得したいと考えています。検索しましたが、カーソル(マウスポインター)の位置しか見つかりませんでした webview-> cursor.pos (); そして、このポジションは私が望んでいるものではありません。

誰にも提案はありますか?

ありがとうございました!

0 投票する
0 に答える
182 参照

python - 正規表現に一致するように textCursor のアンカーを設定します

正規表現を使用して、テキスト内のすべてのリンクを見つけました。自分自身のリンクのみを選択してアンカーを挿入するにはどうすればよいですか?

私はすでに使用しています:

これには、テキスト全体がリンクとして作成されるという問題があります。それは、ドキュメント全体を選択しているためです。しかし、見つかったリンクを自動的に選択するにはどうすればよいでしょうか? たとえば、テキストが

www.google.com と www.stackoverflow.com が自動的に選択されるようにしたいと思います。正規表現で既に見つけた正確な2つの文字列。

編集:

リンクを選択する方法を見つけました。最初に、リンクのインデックスを取得します

またはさらに良い:

次に、他に2つの問題があります。

  • リンクは、テキストをhtmlとして再設定した後にのみ表示されます

  • リンクをクリックしても何も起こりませんが、すべてのテキストがクリアされます。

html を phase5 (html-editor) に入力すると、リンクが「a href="http://..:」のような場合にのみ機能し、「a href="www....」ではないように見えます。何か提案はありますか?