根据m_arrFace[StrToInt (slstRow.Strings[0]), 1]) 推断这个数组长得类似这样 var m_arrFace:array of string; slstRow: TStringList; begin .... // 一个string数组,长度为slstRow的长度 SetLength(m_arrFace, slstRow.Count); ..... end;
我试了:var m_arrFace:array of string; 不对 必须用:var m_arrFace:array of array of string; 才能编译通过 但运行时,会内存出错; 看样子:这个数组可能是在别的单元,加载了一串特别的字符才对 我找了网上所有论坛博客里有关QQ表情的贴子都是这个相同的内容,难道他们都解决了?
m_arrFace: array[0..999,0..1] of string; for i:=0 to (TemList.Count-1) div 2 do begin m_arrFace[i,0] := TemList.Strings[i*2]; m_arrFace[i,1] := TemList.Strings[i*2+1]; end;
var
m_arrFace:array of string;
slstRow: TStringList;
begin
....
// 一个string数组,长度为slstRow的长度
SetLength(m_arrFace, slstRow.Count);
.....
end;
我试了:var m_arrFace:array of string; 不对
必须用:var m_arrFace:array of array of string; 才能编译通过
但运行时,会内存出错;
看样子:这个数组可能是在别的单元,加载了一串特别的字符才对
我找了网上所有论坛博客里有关QQ表情的贴子都是这个相同的内容,难道他们都解决了?
不过估计不过就是这样的结构 m_arrFace[表情索引,表情拼音或英文],
这个结构你完全可以自己决定它的长相
如果抄得麻烦,这段程序没啥必要抄,自己实现下。
for i:=0 to (TemList.Count-1) div 2 do
begin
m_arrFace[i,0] := TemList.Strings[i*2];
m_arrFace[i,1] := TemList.Strings[i*2+1];
end;