我用的是ADO对ACCESS数据库进行存储
Self.ADOQuery.Close;
Self.ADOQuery.SQL.Clear;
Self.ADOQuery.SQL.Add('Select * From MClass');
Self.ADOQuery.Open;
Ico:=TIcon.Create;
for i := 0 to Self.ADOQuery.Recordset.RecordCount-1 do begin
Try
Ico.Assign(ADOQuery.FieldByName('Ico'));
Ico.SaveToFile('c:\icoo\'+IntToStr(i)+'.ico');
except end;
j:=IntToStr(ImgList.AddIcon(Ico))
ImgList.GetIcon(j,GameIco);
Ico.SaveToFile('c:\ico\'+IntToStr(j)+'.ico');
Self.ADOQuery.Next;
end;在2003系统下正常 在XP系统32位色下会出现部分图标是黑块
我试图用ico.savetofile来测试 在ImgList.AddIcon之前保存出来的图标正常
从ImgList.AddIcon里导出来的图标有部分就是黑块在把xp下的色位改成16位色图标都正常了
我不知道到底哪里出问题了
Self.ADOQuery.Close;
Self.ADOQuery.SQL.Clear;
Self.ADOQuery.SQL.Add('Select * From MClass');
Self.ADOQuery.Open;
Ico:=TIcon.Create;
for i := 0 to Self.ADOQuery.Recordset.RecordCount-1 do begin
Try
Ico.Assign(ADOQuery.FieldByName('Ico'));
Ico.SaveToFile('c:\icoo\'+IntToStr(i)+'.ico');
except end;
j:=IntToStr(ImgList.AddIcon(Ico))
ImgList.GetIcon(j,GameIco);
Ico.SaveToFile('c:\ico\'+IntToStr(j)+'.ico');
Self.ADOQuery.Next;
end;在2003系统下正常 在XP系统32位色下会出现部分图标是黑块
我试图用ico.savetofile来测试 在ImgList.AddIcon之前保存出来的图标正常
从ImgList.AddIcon里导出来的图标有部分就是黑块在把xp下的色位改成16位色图标都正常了
我不知道到底哪里出问题了
刷新一下,看看会不会出来,refresh
我在2003系统下是完全正常
而XP下也测试 Ico.SaveToFile( 'c:\icoo\ '+IntToStr(i)+ '.ico ');
ImgList.AddIcon(Ico); ImgList.GetIcon(j,Ico);
Ico.SaveToFile( 'c:\ico\ '+IntToStr(j)+ '.ico '); 在添加进imglist前和都导出到C盘查看的
添加前导出来的都正常 添加后导出来的部分图标是黑块