在 Delphi 程序里,读一个文本文件的内容(一般都是汉字,比如一首诗)到RichEdit里,然后选定这首诗的开头的一个汉字设为红色,然后将这首诗另存为rtf文件(这样就能保存颜色了)。当再次读取该rtf文件时,只显示这首诗开头的一个汉字,就是设为红色的那个汉字。就是这个过程,怎么实现啊,小妹多谢了:)

解决方案 »

  1.   

    csdn惊见一位人妖,请问您到哪里做的变性手术?是不是泰国不吃香来的?
      

  2.   

    leeon868
    别这么说人家,不想回答也就算了:)
      

  3.   

    用记事本打开一个rtf文件看看就知道了.
      

  4.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      s:string;
      ta:TTextAttributes;
      ws:WideString;
    begin
      //保存rtf文件
      self.RichEdit1.Text:='床前明月光';
      self.RichEdit1.SelStart:=0;
      self.RichEdit1.SelLength:=1;
      self.RichEdit1.SelAttributes.Color:=clRed;
      self.RichEdit1.SelAttributes.Charset:=GB2312_CHARSET;
      self.RichEdit1.SelAttributes.Name:='宋体';
      self.RichEdit1.SelAttributes.Size:=18;
      self.RichEdit1.PlainText:=false;
      self.RichEdit1.Lines.SaveToFile('c:\a.rtf');  //装入超文本文件
      self.RichEdit1.PlainText:=false;
      self.RichEdit1.Lines.LoadFromFile('c:\a.rtf');
      //保存第一个字的格式
      self.RichEdit1.SelStart:=0;
      self.RichEdit1.SelLength:=1;
      ta:=self.RichEdit1.SelAttributes;
      //截掉后面的汉字
      ws:=self.RichEdit1.Text;
      self.RichEdit1.Text:=MidStr(ws,1,1);
      //还原第一个字的格式
      self.RichEdit1.SelStart:=0;
      self.RichEdit1.SelLength:=1;
      self.RichEdit1.SelAttributes:=ta;
    end;
      

  5.   

    很烦的
    要用 SelStart SelLength