reportbuilder 10 中的memo在换的时候第二行出现乱码,求助!!
应该是控件不支持双字节的原因,我在代码中设置了wordwrap := True;看了以前的帖子,好像要修改一个wordwrap属性调用的函数,RB 10 中没找到该函数,如何处理请指教!!!!!

解决方案 »

  1.   

    不支持Unicode 没办法了,要么自己改源码,比较麻烦,
      

  2.   

    自己要修改一下rb空间的源代码,以支持汉字的折行。步骤如下:
    1、在DELPHI中打开rbRCL107.dpk,并打开其中的ppPlainText.pas
    2、找到过程WrapCharacters,在while循环前加上下面的代码: 
      //--begin如果加上这个字后,行长超限,并且该字为双字节的字,则不要把这个字放到当前行
      liLineWidth := CalcTextWidth(lsCurrentLine + lsNextWord);
      if (liLineWidth > FWidthAvailable)
         and (StrByteType(Pchar(lsNextWord), 0) = mbLeadByte) then
      begin
        aNextWord := '';
        aRemainingChars := lsNextWord;
        lbFits := true;
      end;
      //--end
    3、重新编译rbRCL107.dpk,并把rbRCL107.bpl和rbRCL107.dcp拷贝到c:\windows\system32下面
    4、重新编译你的应用程序
    再看看效果如何?