問題タブ [qtextedit]

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 投票する
2 に答える
15396 参照

c++ - QTextEdit に画像を配置するいくつかの方法

これは非常に単純な質問だと思いますが、画像をコピーすると QTextEdit に貼り付けられませんか? 貼り付けは無効です。また、画像をドラッグアンドドロップする方法も知りたいです。

ところで、QTextEdit に画像を挿入するために、次のコードを使用します。

おすすめですか?この操作はどのようにしますか?

0 投票する
2 に答える
1265 参照

c++ - QTextDocument シリアライゼーションの実装方法

この質問は以前に尋ねたことがあり、これには未解決のバグがあるという回答がありました。しかし、これは本当に必要な機能であり、多かれ少なかれ本格的なアプリケーションをプログラムする各 Qt プログラマーは、QTextEdit を使用し、QTextEdit に挿入されたデータがシリアライズおよびデシリアライズされる可能性が非常に高いと思います。したがって、この問題は非常に重要であり、多くの Qt 開発者にとって役立つと考えています。そこで、優秀なプログラマーと operator<<(QDataStream, QTextDocument) の実装方法について話し合うことにしました。それ以外の場合は、Qt の人たちが親切に自分でそれを行うまで待つ必要があります :)。

QTextEdit で、いくつかの写真とテキストがあるとします。異なるフラグメントでは、テキストの形式が異なります。この種の QTextEdit のコンテンツを取得する方法とシリアル化する方法は、当時の状態を表示するためですか?

編集: QTextDocument を返す documnet() メソッドを使用して、書式設定されたテキストと画像を取得できることを知っています。また、QTextDocument には operator<<(QDataStream, QTextDocument) がなく、この演算子を書き込む要求がありますが、まだ開いていることも知っています。ですから、このメソッドを書くのを手伝ってください。QTextDocument クラスを継承してから、QTextEdit に存在するリソースのすべての名前を格納する新しいメンバー (コンテナー) を追加する必要があると思います。次に、定義したコンテナーを使用してすべてのリソースを反復処理することにより、すべてのリソースをシリアル化する必要があります。それは良い解決策ですか?はいの場合、実装を手伝っていただけますか?そうでない場合は、より良いアイデアを提供してください。

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

qt - QTextBrowserを一番上までスクロールします

私は次のものを持っています:

残念ながら、DetailsTextBrowserのHTMLコンテンツが設定された後、ドキュメントは一番下までスクロールされます。

私は成功せずに試しました:

QTextBrowserを一番上までスクロールする方法はありますか?

0 投票する
2 に答える
972 参照

c++ - テキスト編集の上に QTextEdit と QToolBar を持つウィジェットであるクラスを作成する方法

私の意図は、リーチ テキスト コントロールを備えた QTextEdit を作成することです。ツールバーに配置したいコントロール。しかし、私はレイアウトを制御するのに苦労しています。問題は、ツールバーを持つ QWidget (私のクラスは QWidget を継承) に QTextEdit を配置すると、重複することです。

私が試した別の方法は次のとおりです。私のクラスは QTextEdit を継承し、ツールバーがあります。現在、レイアウトは異なりますが、私が望むものではありません。素敵な景色が見えるように助けてください。

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

c++ - ボタンを押してQTextEditで選択したテキストをフォーマットする方法

ボタンをクリックして、選択したテキストをQTextEditでフォーマットしたい。たとえば、太字でない場合は太字にし、太字の場合は太字にしないようにします。例を教えてください。

編集:

実際、私はすでにコードを見つけました-私が必要なことをするテキストエディタのqtデモ:

しかし、何がtextCursor()メソッドを返すのか、そしてプロパティのマージがどのように行われているのか理解できませんか?一部のフォーマットは変更されており、一部は一定のままです。mergeCharFormat関数が、何を変更し、何をそのままにしておくかをどのように理解するかこの2つだけ説明してください。ありがとう。

0 投票する
2 に答える
5940 参照

c++ - Qtで箇条書きまたは番号付きリストを作成するには?

ボタンをクリックして Qt を使用して QTextEdit で箇条書きまたは番号付きリストを作成する方法は? また、同じボタンをクリックして選択した段落をリストにする必要があります。カーソルがリスト内にあるときにボタンをクリックすると、リスト項目はリスト項目ではなく単純な段落になります。2 つの言葉で、テキスト エディター用に 2 つのボタンを作成したいと考えています。これは、(箇条書きと番号付けのボタンは MS Word です) と同じように機能します。

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

qt - Qt WYSIWYG エディター - 編集不可/生成された領域

WYSIWYG ドキュメント エディターを開発しています。Linux/KDE が実行されるメイン プラットフォームであるため、エディタは Qt フレームワークを中心に構築されています。

私はこれまで QTextEdit ウィジェットを使用しており、基本的なテキスト編集と書式設定を行ってきました。ただし、次の要件を実装する方法については行き詰まりました。

ドキュメントは複数のレベルの見出しに分割されており、上部に自動的に生成された目次が必要です。

テキストの段落 (見出し 1、見出し 2、...、段落) のスタイルを選択できる必要があります。見出しスタイルを選択すると、行の先頭にセクション番号が付けられます。

たとえば、スタイルが「見出し 3」のテキスト「設計仕様」を含む段落は、次のように表示される場合があります。

3.4.2 設計仕様

接頭辞付きのセクション番号 ' 3.4.2 ' が自動的に生成された場所。セクション番号は、その上にヘッダーが挿入および削除されると更新されます。ユーザーがこのプレフィックスを自分で変更または削除できないようにする必要があります。接頭辞を削除した場合、段落はヘッダーのままではなく、「段落」スタイルに戻す必要があります。

ヘッダーが挿入/変更/削除されると、目次が自動的に更新されます。また、ユーザーは目次を変更または削除できないようにする必要があります。

その機能をエディターに実装する方法に行き詰まっています。おそらく、編集不可能な範囲 (目次と各プレフィックスを含む範囲) のツリーを保存することを考えていました。カーソル位置/現在の選択が変更されるたびに、選択が重なっている場合、または QTextEdit コントロールを読み取り専用に設定します。カーソルが範囲内にあります。しかし、何かが変更されるたびに、これらの範囲をすべて最新の状態に保つ (ツリーを再構築する) という問題があります。これは、WYSIWYG エディターでよくあることです。

どのように進めればよいか困っています。この件に関するアドバイスをいただければ幸いです。

0 投票する
3 に答える
3698 参照

c++ - QTextEditで画像のサイズを変更するにはどうすればよいですか?

QTextEditで画像をクリックし、画像の隅から押したまま、画像のサイズを変更するにはどうすればよいですか?または、少なくとも幅と高さを変更するために選択されたカーソルの下の画像を取得する方法は?

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

qt4 - QTextEdit でテキストを検索し、その行を一番上までスクロールします

検索用のキーワードを含む QListWidget と、テキストを含む QTextEdit があります。キーワードの 1 つをクリックすると、QTextEdit 内の単語が一致し、対応する行が一番上にスクロールされます。

QListWidget と QTextEdit をシグナル/スロットに接続し、QTextEdit::find() を実行すると、ほぼ望ましい動作になります。残念ながら、キーワードを含む行は一番上までスクロールされず、QTextEdit の一番下にあります。どうすれば簡単に目標を達成できますか?

ご協力いただきありがとうございます、

クリス

0 投票する
8 に答える
6531 参照

c++ - 自分でソースコードエディタを作りたいのですが、良い選択は何ですか?

私は、次のような単純なものを決して提供しない数十のエディターを持っています。

  • タイプキーワードとインストラクションキーワードを区別して、色を変えられるようにします。
  • qt gtkなどの標準的なGUIライブラリを使用するクロスプラットフォームであること(notepad ++、はい、私はほとんどあなたを嫌います)。
  • 重複行、コメント選択、適切な検索-置換などの十分なキーボードショートカット。
  • 行全体を選択するための数直線マージンのシングルクリックなどのまともなタスク緩和機能。
  • 脳をコンパイルするコードは1つのものであるため、Scintillaまたは十分に異なる別のレクサーで、さまざまなものを強調表示します。私が重要だと思うものを目ですばやく識別します。

HTMLやCSSではなく、C、C ++、おそらくPythonなどの非常に基本的な言語をサポートしたいだけです。

Scintillaは、これらの言語を強調するだけの良い選択であり、レクサーは本当に必要ですか?

QTは、私がやりたいようなテキストエディタをプログラムするのに十分ではありませんか?QScintillaがあることは知っていますが、レクサーを統合するlibを使用すべきではない理由はありますか?Scintillaがこんなに良いlibなのはなぜですか?

QTはそのような編集者にとって良い選択ですか?(また、ProFontをエディターにハード埋め込みして、OS間のフォントの問題を解消したいと思います)。

編集:要するに、私は、notepad++と同じ構文のハイライト機能だけを備えたエディターを作りたいと思っています。それが私の主な目標であり、QScintillaの使用は私が思っていたよりも少し難しいかもしれません...

EDIT2:ええと、私はtextadeptを見つけました、それはそれほど知られていませんが、かなり素晴らしいです。字句解析プログラムを作成できませんでした。ウィンドウの下で行うことが他にあるため、残念ながらMacでは低速です。どうやら、Mac用のSciteの公式ビルドはありません。