問題タブ [richedit]

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 に答える
914 参照

wpf - HwndHost の親であるリッチ エディット コントロールに入力すると、WPF ショートカットがアクティブになります

従来の MFC リッチテキスト エディターをラップする WPF アプリを作成しています。リッチテキスト エディターを HwndHost にラップしました。HwndHost コントロールは、WPF TabControl と並んで配置されます。

http://www.kempy.co.uk/code/Test.pngで実行中のアプリのスクリーンショット

フォーカスの問題とナビゲーションの問題 (上/下/左/右/タブ/入力) は別として、私は解決できましたが、まだ 1 つのショーストップの問題があります。

パネル上のショートカット キーであるリッチ テキスト コントロールに文字が入力されると、ショートカットがアクティブになり、リッチエディット コントロールはその文字を取得しません。http://www.kempy.co.uk/code/Test.zipには、動作を実証するための簡単なテスト プロジェクトが添付されています。リッチ エディット コントロールで P または C を押すと、リッチ テキスト コントロールにキーボード フォーカスがあっても、パネルにフォーカスするか、ボタンをクリックします。

参考までに、リッチ エディット コントロールが Tab、Enter、Up、Down、Left、Right を処理できるようにするコードを次に示します。

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

c++ - RichEdit から番号付きリストをコピーしますか?

番号付きリストが選択されている RichEdit コントロールに WM_COPY メッセージを送信し、そのテキストをメモ帳に貼り付けると、番号が含まれません。それらを取得する方法はありますか?ありがとう!

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

c++ - RichEdit コントロール内で太字のテキストを見つける方法は?

明らかに、EM_GETCHARFORMAT を使用して一度に 1 文字ずつ実行できますが、非常に遅いです。

1 つのアイデアは、ITextDocument/ITextFont インターフェイスを使用することです。もう 1 つは、EM_STREAMOUT メッセージを使用して手動で RTF を解析することです。しかし、どちらのアプローチが優れているかを判断することはできず、実装の詳細については非常に曖昧です。どんな助けにも感謝します、ありがとう!

0 投票する
5 に答える
6606 参照

c++ - RichEditコントロールで選択色を変更するにはどうすればよいですか?

基本的に、色付きのテキストの上にある場所で、標準のRichEdit選択色を変更したいと思います。

RichEditコントロールに「ハイライト」関数(黄色のマーカーなど)を実装しています。選択したテキストにハイライトを適用すると、選択範囲がそのまま残り、文字の色が上書きされるため、視覚的に何も変化しません。ユーザーはハイライトが適用されたという視覚的なフィードバックを受け取る必要があるため、これは悪いことです。

これで妥協点に落ち着きました。「ハイライト」コマンドを実行した後、選択を完全にクリアします。ただし、色付きのテキストの上にある場合は、選択色を変えるのが理想的です。

どうやってやるの?前もって感謝します!

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

delphi - trichview のような Delphi コンポーネント

単純に使用するための trichview のような Delphi コンポーネントを探しています。

ありがとう

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

delphi - RichEditフォーマットを文字列として保持しますか?

宣言したカスタムタイプに文字列を割り当てています。これは、TTreeViewsNode.Dataプロパティを使用して読み取り/書き込みします。ノードとの間で読み取りと書き込みを行います。次のようになります。

読む:RichEdit1.Lines.Text := TMyData(TreeView1.Selected.Data).MyString;

書く:TMyData(TreeView1.Selected.Data).MyString := RichEdit1.Lines.Text;

これはプレーンな文字列に最適です。フォーマットを失うことなく、リッチフォーマットされたテキストを文字列に格納できるようにしたいです。フリーウェアZeosLib(SQL)を使用してデータベースを保存しているため、RichEditでStreamsを使用してこれを行うことができました。これは、不明なトークンエラー(RTFタグからの可能性が高い)が発生するためです。エラーなしで保存するにはどうすればよいですか?

アップデート

Sylverdragによって提案されたBase64エンコーディング/デコーディングを使用して、エラーなしで正しく保存することができました。これは私の文字列をエンコードして悪い文字を削除します。

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

delphi - RichEdit がコンテンツを貼り付けた PlainText を尊重しない

新しいアプリケーションを作成し、TRichedit にドロップして、PlainText プロパティを true に設定します。次に、アプリケーションを実行し、リッチ フォーマットのテキストを RichEdit に貼り付けます。

プレーンテキストとして表示されることを期待していますが、フォーマット付きのコンテンツが表示されます。

プレーンテキストと同じように TRichedit を使用する方法を誰もが知っています (メモを使用しない:))

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

winapi - リッチエディットコントロール:リッチフォーマットを防止しますか?

ユーザーがWin32リッチエディットコントロールのテキスト以外のものを変更できないようにするにはどうすればよいですか?

(つまり、テキストのフォーマットを変更したり、グラフィックを追加したりできないようにする必要があります。新しいテキストをコピーして貼り付ける場合は、テキストのみを保持し、関連するフォーマットを破棄する必要があります。)

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

winapi - Richeditコントロールは、winAPIc++アプリで文字列のコンテンツを表示します

ダイアログにリッチエディットコントロールがあります。richeditコントロールに文字列を入力したいと思います。richeditコントロール自体が正しく表示されます。しかし、richeditコントロールに文字列を入力する方法がわかりません。以下のresource.rcコードで推測しました。

main.cppには、次のものがあります。

resource.rcには、次のものがあります。

しかし、これは明らかに、文字列からリッチエディットコントロールにテキストを配置する方法にさえ近づいていませんか?

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

c++ - winapi を使用してツイートを表示するために選択できる最適なコントロールは何ですか?

コントロールは、複数の行にテキストを描画したり、URL や @user タグなどのクリックに応答したりできる必要があり、目立つように別の色にする必要があります。

最初の明白な選択はリッチエディット コントロールでしたが、これには多くの問題がありました。まず、テキストを選択不可にし、入力を無効にしたいと思います。後者は簡単ですが、テキストの選択を禁止する唯一の方法は、コントロールを無効にすることです。その場合、背景色をデフォルトのグレーから白に変更する方法がわかりません。さらに、リッチエディットから無料で入手できるすべてのクリック可能なリンク機能は、コントロールが無効になると機能しなくなります。

私の選択肢は何だと思いますか?TextOut を使用して独自のコントロールを作成しようとするのは非常に慎重です。それは泣きたくなるかもしれません。

編集: これまで、ユーザーがオプションとしてテキストを選択できるようにすることを考えていなかったので、読み取り専用モードは役に立たないようでした。そのように頭の中で計画しただけです。私は間違いなく点滅するキャレットがないようにしたいので、いろいろ調べてみると、リッチエディットの WM_SETFOCUS で HideCaret を呼び出して (サブクラス化することにより)、0 を返すことができることがわかりました。皮肉なことに、マウスで何かを選択する機能もなくなりました。これは、私が最初に望んでいた動作とほとんど同じです。ただし、選択を禁止することに完全に反対しているかどうかはわかりません。話を戻します。あとは、テキストの上にカーソルを置いたときにカーソルの画像が変化する動作をオーバーライドできるかどうかを判断するだけです。