リッチエディットを強調表示できない/ハイライトまたはテキストの選択を無効にできないことを確認するのに役立ちますか?カーソル位置も削除します。このアプリケーションは、rtfテキストのみを表示することを目的としており、編集は目的としていないため、これらの機能は必要ありません。デルフィで
4 に答える
イベントSelLength
でプロパティを0に設定できますOnSelectionChange
procedure TForm1.RichEdit1SelectionChange(Sender: TObject);
begin
TRichEdit(Sender).SelLength:=0;
end;
明確にするために、色やサイズなどの豊富なテキスト機能が間違いなく必要ですか?そして、あなたは間違いなくあなたのコントロールからのコピーを禁止し、どこかに貼り付けたいですか?それは正確ですか?
TRichEditからOnMouseUp、OnSaveCLipboard、OnSelectionChangeをオーバーライドし、継承されたメソッドGetSelTextBuf、CopyToClipboard、CutToClipboard、SelectAll ..多分Repaint、Updateなどをオーバーライドすることをお勧めします。
必要なものを確認してください。リッチテキスト機能がなくても生活できる場合は、いくつかのTLabelを使用して、プログラムでテキストを記述してください。
リッチテキストが必要な場合は、いくつかの選択肢があります。コンポーネント用のハンドラーをたくさん作成するか、TRichEditから派生した独自のコンポーネントを作成して、1つのフォームにそれらをいくつか含めるのを簡単にするか、Toriのようなサイトを見てください。他の誰かがすでにそのようなコンポーネントを作成しているかどうかを確認します。
幸運を。
RichEditの読み取り専用プロパティをtrueに設定できます。これにより、キーストロークなどが防止されます。
RichEditを無効にすると、テキストが選択されなくなり、テキストカーソルが非表示になります。
RichEdit.Enabled := FALSE;