怎么获得RichEdit中文字的字节数

如何获得RichEdit中文字的字节数?
设置了最大长度,却发现有中文时一个中文字只算1,但我希望能限制RichEdit中文字的实际占用字节数,我现在是在KeyPress中进行实时过滤,还有其它更简单的方法吗?

------解决方案--------------------
C/C++ code

int t=redt_TxtEdit->Text.ByteType(i);//为richedit中第几个字符
if(t==mbSingleByte)   ///单字节
{
    长度为1
}
else                //双字节
{
    长度为2
}

------解决方案--------------------
只知道最大长度限制:
RichEdit->MaxLength=....

和获取它的一行:
lines->BeginUpdate();
RichEdit1->Lines->Strings[i];
lines->EndUpdate;

学习关注中啊~~
------解决方案--------------------
按照1楼的办法,扫描整个文本,汉字为2个字节,你自己写代码计算下,应该可以了吧
------解决方案--------------------
实际字符数:
strlen(RichEdit1->Lines->Text.c_str())
它的最大长度是按unicode算的


------解决方案--------------------
如果目的是限制长度的话,我觉得就在KeyPress里面判断RichEdit1->Lines->Text.Length()是不是达到最大比较方便。
if(RichEdit1->Lines->Text.Length()==MaxLength&&Key!=VK_BACK)
 Key=NULL;

------解决方案--------------------
不知道RichEdit1->Lines->Text.Length()这样的内部操作会不会先取整个内容,然后算长度。我觉得还是用GetWindowTextLengthA(RichEdit1->Handle)来获得字节数比较好。