1

ユーザーが実行時にRichTextBoxに表示するように要求したときに、プログラムが特定の行を探して解析するテキストファイルがあります。各行には、通常の ForeColor ではなく赤で表示したい特定のコメントがあります。RichTextBox には常に 1 行の「聖書」のみが表示されます。テキスト ファイルに書式を追加して、特定の行を RichTextBox に表示するときに、必要なコメントを色付きで表示する方法はありますか?

すなわち...私は聖書の聖書を持っています:

それからイエスは振り返り、彼らが続いているのを見て、彼らに言った、「あなたがたは何を求めているのですか?」 彼らは彼に言った、「ラビ(つまり、解釈されている、マスター)」あなたはどこに住んでいますか?

「何を求めているの?」という言葉が欲しい。RichTextBox に表示されるときに赤で表示されます。もちろん問題は、どのコメントを赤で表示する必要があるかをプログラムが認識できず、ユーザーがそれを制御できないことです。そのため、読み込まれるファイルから処理できるものである必要があります。

テキスト ファイルの形式は基本的に次のとおりです。

(ヨハネ 2:2) そして、イエスも弟子たちも結婚に呼ばれました。

(ヨハネ 2:3) 彼らがぶどう酒を欲しがったとき、イエスの母はイエスに言った、「ぶどう酒がありません」。

(ヨハネ 2:4) イエスは彼女に言われました。私の時はまだ来ていません。

(ヨハネ 2:5) 彼の母はしもべたちに言いました。

これを達成する方法を誰かが考えていますか? 上記のテキストの例で、3 行目 (John 2:4) が RichTextBox に表示される場合、「おばさん、私はあなたと何をしなければならないのですか?私の時間はまだ来ていません。」というコメントが必要です。赤で表示されます。

基本的に、プログラムの実行時にランダムな経典を表示するランダムな経典ジェネレーターを作成しようとしています。イエスの言葉に赤い文字の書式を設定したいと思います。

4

1 に答える 1

2

リッチテキスト ボックスの RTF プロパティがテキストを検索する方法の例を次に示します。

{\rtf1{\fonttbl{\f0\fnil\fcharset0 Tahoma;}}
{\colortbl ;\red255\green0\blue0;}
\f0\fs24 Then Jesus turned, and saw them following, and saith unto them, \cf1 What seek ye?\cf0  They said unto him, Rabbi, (which is to say, being interpreted, Master,) where dwellest thou?\par
}

カラー テーブル (colortbl) で定義されている色は、インデックス 1 が赤であることに注意してください。タグ \cf1 があります。デフォルトの \cf0 は黒です。

だから私が与えたのと同じヘッダーを使用してください(フォントを変更できます)。

正規表現を使用して に置き換えることができ\...\ます\cf1 ...\cf0。代わりに、使用することができます{\cf1 ...}

次に、結果 (rtf 全体) を richtextbox の rtf プロパティに割り当てます。これについて助けが必要な場合は、私に知らせてください。

ちなみに赤文字は何か別のタグでタグ付けできるようにしておいた方がいいかもしれ<Red>...<red>ませ<R>...<r>\...\

于 2013-10-27T20:19:56.393 に答える