問題タブ [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.
c++ - 選択があるときに QTextEdit ウィジェットがスクロールしないようにする
私はこれを広範囲に調査しましたが、まだ満足のいく解決策を見つけていません:
これらの条件のいずれかが満たされたときに、ウィジェットの下部へのスクロールをトリガーせずに QTextEdit ウィジェットの最後にテキストを追加するにはどうすればよいですか?
- ユーザーがテキストを選択しました。
- ユーザーが下から離れてスクロールしました。
(それ以外の場合はすべて、QTextEdit ウィジェットの一番下までスクロールする必要があります。)
text
QTextEdit の下部に追加するために現在使用しているコードは次のとおりwidget
です。
これにより、条件 1 が部分的に処理されます。問題は、選択範囲の最後の行のみが表示されるまでビューがスクロールし続け、その時点で実際にスクロールが停止することです。
条件 2 はまったく考慮されていません。一部の投稿では、垂直スクロールバーの位置を保存し、テキストが追加された後に復元することを提案していますが、テキストが追加されたときにスクロールバーが上に移動する必要があるため、これは正しくないと思います。景色は静止しているのに。
ユーザーがテキストを選択したかどうかに関係なく、追加されるテキストの色を調整する必要があるため、QTextCursor::insertText()
代わりに使用していることに注意してください。QTextEdit::append()
更新:Pavelの答えのおかげで、私が最終的に得たコードは次のとおりです:
qt - QTextEdit の縦書きテキスト
QTextEdit に垂直テキスト (方向 - 下から上) が必要です。私が実装した最も類似したソリューションは、ユーザーが「回転」ボタンを押したときに、水平テキスト ブロックを回転した画像 (元のテキスト ブロックのスクリーンショット) に置き換えることです。しかし、それは松葉杖です - ローレートされたテキストは編集できなくなります。よりエレガントなソリューションはありますか?
qt - QTextCursor を使用してテーブルを選択する方法
このコードは機能するはずですが、機能しません
qt - QTextCursrsor::insertImage() で挿入された中央の画像
中央揃えの画像を含む PDF ファイルを印刷したいと考えています。ドキュメントは QTextDocument と QCursor で作成されます。
しかし、ドキュメントの画像を中央 (水平) に配置する方法が見つかりません。
画像を挿入する方法は次のとおりです。
ありがとう
c++ - QTextCursor を「更新」することは可能ですか?
QTextEdit オブジェクトで、マウス カーソルの下の文字の位置を知りたいとしましょう。
書ける...
...動作します(マウスの位置が0から最後の文字の最後のインデックスに変わります)が、イベントが発生するたびにmousePressEvent()メソッドが新しいカーソルを作成します。そのような創造の「コスト」がわからないので、私は気になります。
それでは、cursor属性を作成して、それをmousePressEvent()で使用してみませんか?
何かのようなもの :
しかし、位置は固定されたかのように、もはや変化しません。それで、どういうわけかカーソルを更新する方法はありますか? または、 QTextCursor を繰り返し作成するコストは取るに足らないものですか?
更新:次のようなものを書く...
...新しいカーソルを作成し、次と同等のようです:
python-2.7 - PyQt4のQTextEdit内のすべてのフォントサイズを変更するには?
をQTextEdit
使用してプログラムでコンテンツが入力されるウィジェットがありますQTextEdit.textCursor
。
私の計画は、ユーザーが に入力された情報を表示し、QTextEdit
必要に応じてテキストを編集し、後で を使用して PDF ファイルに印刷できるようにすることですQPrinter
。
QTextEdit
ただし、ユーザーがテキストを編集できるようにする前に、コンテンツ全体のフォント サイズを変更したいと考えています。コンテンツを 1 つのフォント サイズに設定するだけです。複数のフォント サイズに対応する必要はありません。
QTextEdit.setFontSize(16)
術前も術後も使ってみtextCursor
ましたが、効果はないようです。
QTextEdit
ウィジェットのコンテンツのフォント サイズを変更するにはどうすればよいですか?
c++ - この例でcursor.clearselection()が機能しないのはなぜですか?
インスタンスの選択したテキストに下線を引くボタンを作成しようとしていQTextEdit
ます。
コンストラクターでは、カーソルをアクティブにして、後で使用する setFontUnderline メソッドの bool 変数を設定しています。
以下の最初のメソッドは下線ボタンを押すことで実行され、2 つ目は下線ボタンを離すことで実行されます。
問題は、このコードでは、選択されたテキストが最初に pressed_underlinebutton() メソッドによって下線が引かれ、次にreleased_underlinebutton メソッドで即座に下線が引かれることです。
release_underlinebutton() メソッドを使用して、setfontunderline(false) を再度設定している間、下線を引く選択がなくなったことをアーカイブしたいと思います。