|
发表于 2010-8-13 18:32:49
|
显示全部楼层
隐藏后删除图片会报错,这个问题我没遇到过。不太清楚,可以等别人来回答下。我回答下剩下的。
删除图片以后不能再次创建的问题。
看函数libNtve_gf_DisplayScreenImage中有两条分支判断。
[codes=galaxy]
if ((libNtve_gv_screenImageDialogs[lp_screenImageID] == c_invalidDialogId)) {
DialogCreate(1, 1, c_anchorCenter, 0, 0, false);
libNtve_gv_screenImageDialogs[lp_screenImageID] = DialogLastCreated();
}
else {
}
if ((libNtve_gv_screenImageDialogImages[lp_screenImageID] == c_invalidDialogControlId)) {
DialogControlCreate(libNtve_gv_screenImageDialogs[lp_screenImageID], c_triggerControlTypeImage);
libNtve_gv_screenImageDialogImages[lp_screenImageID] = DialogControlLastCreated();
}
else {
}
[/codes]
c_invalidDialogControlId是已经定义了的,等于0。
也就是说如果在删除了图片后,而libNtve_gv_screenImageDialogImages[lp_screenImageID]不清零的话,是不会再创建图片的。
我不太清楚你是怎么删除的,我在lib中没有找到删除图片的函数,所以我猜可能是这个问题。
bossbar的问题,你可以看函数libNtve_gf_RefreshBossBar,在bossbar创建完毕以后会调用此函数,它会定义bossbar各个图片之类的大小,这个大小是在libNtve_InitVariables已经定义好了的,其中跟bossbar相关的有
[codes=galaxy]
while (init_i <= 50) {
libNtve_gv__BB_BarWidth[init_i] = 520;
init_i = init_i + 1;
}
init_i = 0;
while (init_i <= 50) {
libNtve_gv__BB_BarHeight[init_i] = 120;
init_i = init_i + 1;
}
[/codes]
可能还有别的,我没仔细找,也就是你把上面两个变量的值修改下试试吧。 |
|