2

リッチエディットを強調表示できない/ハイライトまたはテキストの選択を無効にできないことを確認するのに役立ちますか?カーソル位置も削除します。このアプリケーションは、rtfテキストのみを表示することを目的としており、編集は目的としていないため、これらの機能は必要ありません。デルフィで

4

4 に答える 4

4

イベントSelLengthでプロパティを0に設定できますOnSelectionChange

procedure TForm1.RichEdit1SelectionChange(Sender: TObject);
begin
 TRichEdit(Sender).SelLength:=0;
end;
于 2010-07-26T02:40:52.303 に答える
2

明確にするために、色やサイズなどの豊富なテキスト機能が間違いなく必要ですか?そして、あなたは間違いなくあなたのコントロールからのコピーを禁止し、どこかに貼り付けたいですか?それは正確ですか?

TRichEditからOnMouseUp、OnSaveCLipboard、OnSelectionChangeをオーバーライドし、継承されたメソッドGetSelTextBuf、CopyToClipboard、CutToClipboard、SelectAll ..多分Repaint、Updateなどをオーバーライドすることをお勧めします。

必要なものを確認してください。リッチテキスト機能がなくても生活できる場合は、いくつかのTLabelを使用して、プログラムでテキストを記述してください。

リッチテキストが必要な場合は、いくつかの選択肢があります。コンポーネント用のハンドラーをたくさん作成するか、TRichEditから派生した独自のコンポーネントを作成して、1つのフォームにそれらをいくつか含めるのを簡単にするか、Toriのようなサイトを見てください。他の誰かがすでにそのようなコンポーネントを作成しているかどうかを確認します。

幸運を。

于 2010-07-26T02:41:22.717 に答える
1

RichEditの読み取り専用プロパティをtrueに設定できます。これにより、キーストロークなどが防止されます。

于 2010-07-28T08:36:32.310 に答える
0

RichEditを無効にすると、テキストが選択されなくなり、テキストカーソルが非表示になります。

RichEdit.Enabled := FALSE;
于 2018-02-26T14:14:19.543 に答える