设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索

[已解决]Window_Command类当中小疑问?

查看数: 2736 | 评论数: 2 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2019-11-25 21:36

正文摘要:

本帖最后由 miantouchi 于 2019-11-26 08:57 编辑 两个问题, 1.为什么我在Window_Command类的initialize方法里面加 @colum_max 这个代码后面跟着对应数字,光标就能改变每行数量?我也没发现象系统在哪里 调用Wi ...

回复

RyanBern 发表于 2019-11-25 22:27:45
问题 1:根本原因是父类 Window_Selectable 的 update_cursor_rect 方法里利用了 @column_max 计算光标的位置,宽度等信息。
这个方法在 update 方法中调用,Window_Command 继承了父类的方法。而在 Scene_Title 执行的过程中直接调用了 @command_window.update

问题 2:重写了 update_cursor_rect 方法会使得父类的方法失效。因此调用 update 的时候实际是调用了重写后的方法。

评分

参与人数 1+1 收起 理由
miantouchi + 1 认可答案

查看全部评分

YukiYukidesu 发表于 2019-11-25 22:11:05
你……知道继承么……

Ruby类的继承 - tardis - 博客园
https://www.cnblogs.com/tardis/p/4004438.html

@column_max和update_cursor_rect都是父类的方法,要简单地说的话这个Window_Command子类就是添加了方法以及重写或修改了部分父类方法,原本的父类方法自动继承可以使用

点评

更正:@column_max 不是【方法】,而是实例变量。  发表于 2019-11-25 22:23

评分

参与人数 1+1 收起 理由
miantouchi + 1 塞糖

查看全部评分

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-27 05:58

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表