- UID
- 27922
- 精华
- 0
- 冰点
- 1
- 阅读权限
- 60
- 主题
- 22
- 回帖
- 322
- 性别
- 保密
- 在线时间
- 83 小时
- 注册时间
- 2016-1-17
- 最后登录
- 2018-1-27
签到天数: 342 天 [LV.8]以坛为家I
土之精灵LV.3
- 回帖
- 322
- 雪点
- 4837
- 阅读权限
- 60
- 性别
- 保密
- 在线时间
- 83 小时
- 注册时间
- 2016-1-17
- 最后登录
- 2018-1-27
|
因为XP里Window类没有设定一个统一的默认行高方法,
所以这种事情要弄起来其实非常麻烦,
先说两个基本的小错误吧:
①page_row_max里面的self.height - 32里面的这个32其实是窗口的上下16边距,不用改成26,就是32;
②光标矩形的y为什么后面要加上row……这样每一行都会出现微妙的小偏差的……
然后就是项目描绘的大偏差问题,基本上必须每个Window_Selectable的子类都要去处理了,
每个子类大体上需要弄两处,以Window_Item为例子的话,首先是生成contents的
【self.contents = Bitmap.new(width - 32, row_max * 32)】这里,
高度 = 最大行数 * 32,这里的32需要改成26,
然后是draw_item里面的【y = index / 2 * 32】,这个32是行高,也要改成26,
这样一来物品窗口基本上就正常了,其他的Window_Selectable子类都参考这个办法去修改应该就没问题了。
(PS:不过像Window_MenuStatus这种改了光标高度的话,就不用去改了,而且也许需要弄点原来的父类方法进去…
|
|