問題タブ [qgraphicstextitem]
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.
qt - Qt 変換テキスト
写真のように変形する方法はありますかQGraphicsTextItem
(円周に沿って曲げます)。
を使用して適用できるQTransformクラスを見つけましQGraphicsItem::setTransform
たが、図に示すようにテキストを変換する関数が見つかりません。
python - QGraphicsTextItem のページネーション: テキストを特定の長方形の領域に限定する
主にページのレイアウトとドキュメントのページ付けに焦点を当てて、WYSIWYGワードプロセッサを作成するためにQtを使用しようとしています。
私が最初に焦点を当てようとしているのは、印刷プレビュー機能であり、QGraphicsTextItem と共に QGraphicsScene/View を使用すると考えました。
現在の問題は、QGraphicsTextItem の範囲内にテキストを含めることができないことです。テキストは、QGraphicsScene/View の一番下に到達するまで続きます。
QGraphics を使用することが正しい方法であるかどうか疑問に思っています。そうであれば、テキスト ドキュメントのページネーションを取得するにはどうすればよいですか?
添付の図に示す結果を生成するためのコード (PyQt、ただし、Python が優先されますが、C++ を理解できるはずです):
qt - メイン QWidget から QGraphicsTextItem のフォーカスを削除する方法
の中にいくつかのQGraphicsTextItem
とQGraphicsItem
が描かれていQGraphicsView
ます。これQGraphicsView
はメインに追加されましたQwidget
。
FocusOutEvent
このために " " を書きましたが、 " " 内で呼び出されたQGraphicsTextItem
場合にのみフォーカスが削除されます。MousePressEvent
QGraphicsView
ここでの私の懸念は、が呼び出されQGraphicsTextItem
たときに this のフォーカスを削除する方法ですか?MousePressEvent
QGraphicsView
私のMainWindow.cppでは、関数を書きましたmousePressEvent
:
しかし、これはQGraphicsTextItem
.
ポジティブな反応を期待しています。
qt - QGraphicsItem の位置を修正し、QGraphicsTextItem のみを移動する方法は?
と をQGraphicsView
描いている がQGraphicsItem
ありQGraphicsTextItem
ます。
長いテキストを編集するためItemIsMovable
のフラグを設定しました。QGraphicsTextItem
ここで私の懸念。QGraphicsTextItem
長いテキストを表示するために を移動すると、 も左QGraphicsText
に移動します。
しかし、私は動かしたいだけQGraphicsTextItem
です。
QGraphicsItem
の位置を固定したい それ、どうやったら出来るの?
編集:
これが私のコードの出力です。これ
QGraphicsView
はアプリケーションの左上にあります。このビューポートQGraphicsView
は の幅ですQGraphicsItem
。
をクリックしてQGraphicsTextItem
カーソルを右に移動してテキストを表示QGraphicsItem
すると、画像に示すように も移動して非表示になります。
これの位置を修正するにはどうすればよいQGraphicsItem
ですか?
qt - QGraphicsTextItemにユニコードを表示するにはどうすればよいですか?
QGraphicsTextItem
Unicode (またはそのサブクラス)を表示できるようにしたいと考えています。
テキストを設定する唯一の方法QGraphicsTextItem
は
しようとしている
また
私は得る:
私が何をしても(正しいかどうかはわかりませんが)、正しい出力が得られないようです...
QGraphicsTextItem
ユニコードをサポートしていますか? 機能に問題があるのかもしれませんsetPlainText
が、代替手段は何ですか? (調べてみましsetDocument
たが、プレーンテキストも設定されています...)
編集 - QGraphicsTextItem 内の特殊文字のコピーは、一度画面上で機能しますが、コードからユニコードを配置することはできません。
c++ - QGraphicsSceneを使用してQTでカウントを追跡するテキストフィールド
特定のユーザー定義のインスタンスがシーン内QGraphicsItem
をPerson
移動する QT プロジェクト (C++ を使用) があります。それらPersons
が相互作用して、一部の色が変わることがあります。
ここで、ウィンドウにテキスト フィールドを配置し、各色の数を表示したいと考えています。しかし、変更は - メソッドの呼び出し内で発生するPerson::advance
ため、これらの中から更新できるテキスト フィールドを作成したいと考えています。
次のコードを main.cpp に追加することで、テキストを簡単に表示できます。
しかし、シーンtext1
内のadvance
-method内からこの変数のテキストにアクセスして変更する方法がわかりません。Persons
これにはどのような戦略が適していますか?
カウントを追跡するグローバル変数を作成する必要がありますか?作成した場合、テキスト フィールドを更新するにはどうすればよいですか? または、テキストを my
QGraphicsScene
に置くのではなく、プログラムのどこからでも呼び出すことができる他のより適切な場所で定義する必要がありますか? これを行う一般的な方法はありますか?
qt - QGraphicsSceneTextItem 古いテキストを削除
私がやりたいことは、QGraphicsSimpleTextItem
私が追加したのテキスト値を削除または更新することQGraphicsItem
ですが、特定の原因でテキストは更新されませんが、作成されたアイテムに蓄積されます.これは私が今行ったことです:
c++ - QGraphicsTextItem の編集には、アクションを 2 回実行する必要があります
QGraphicsTextItem
ダブルクリックで編集可能にし、クリックアウトすると移動可能にしたい。
それは私が望むことをします-2回ダブルクリックする必要があることを除いて
-最初にダブルクリックすると、カーソルが表示されますが、テキストを編集できません(どちらのオプションでも、TextEditable
またはTextEditorInteraction
(おそらく後者が必要です)。次にダブルクリックしますもう一度入力して、テキストを追加または削除できます。
これはおそらくユーザーが予期しない動作であり、私が何をしてもそれが変わるようには見えません。
私は何か間違ったことをしていますか、それとも何か追加する必要がありますか?
qt - 編集モードでないときにキャレットを非表示にするにはどうすればよいですか?
私はTextItem
継承していQGraphicsTextItem
ます。ダブルクリックでテキストを編集でき、クリックアウトするとテキストが編集できなくなるようにしました。
クリックアウトすると、テキストは編集できなくなりますが、キャレットは引き続き表示されます。
を追加setCursor(Qt::OpenHandCursor);
するとfocusOutEvent
(そして、設定するカーソルの形状を覚えようとしている可能性があります...まだ方法はわかりません)、これを修正します-キャレットが消えます-しかし、それは正しい修正だとは思いません。
QTextCursor
それでも、編集モードでなくなったときにキャレットを非表示にする方法が見つかりません-そして、設定がそれNoTextInteraction
を行うべきだったようです...
編集モードでないときにキャレットを非表示にする最良の方法は何ですか?