查看: 2654|回复: 6

[已经解决] 关于@viewport的作用

[复制链接]
梦石
0
星屑
3557
在线时间
2337 小时
注册时间
2015-8-25
回帖
928

开拓者

发表于 2016-10-2 23:42:37 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 七重 于 2016-10-3 08:08 编辑

虽然自己查过一下论坛里类似的提问,但是还不是很明白这个的概念,所以希望请教一下大家。

比方说在Scene_Item中。
  生成分类窗口, 生成物品窗口,都有@category_window.viewport = @viewport的语句。

  假如注释掉的话,在物品窗口按下确认的时候,@item_window.activatecreate_main_viewport这句就会出错。

  那么在这个场合 @viewport到底是起到了什么作用呢?

--
追记:
《假如注释掉的话,在物品窗口按下确认的时候,@item_window.activatecreate_main_viewport这句就会出错。》

    之所以会发生这种情况是因为我碰歪了脚本。。。(切腹。。)

正常情况下,注释掉这两行的话,原来是会让人物窗口被物品窗口所掩盖。


这样是不是代表了这个语句的意义是,将指定窗口都放在同一张画布上,当有新窗口出现时,那一部分区域的画布就会被重新描绘,以至于旧窗口在上面的部分会消失掉?
梦石
0
星屑
1788
在线时间
1313 小时
注册时间
2012-8-4
回帖
724
发表于 2016-10-2 23:48:23 | 显示全部楼层
Scene_Item里面的@viewport在它的父类Scene_Base里面有吧,显示端口的类。

点评

主要时不明白生成分类窗口, 生成物品窗口都调用XXX.viewport = @viewport有什么意义。  发表于 2016-10-3 08:11
回复

使用道具 举报

梦石
1
星屑
23241
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2016-10-3 00:59:00 | 显示全部楼层
如果选择物品时物品需要选择使用对象的话,界面会弹出一个队友的窗口,注意看队友窗口,它本身是半透明的,但是他遮挡的部分下方却没有物品窗口、帮助窗口以及分类窗口
回复

使用道具 举报

梦石
0
星屑
3557
在线时间
2337 小时
注册时间
2015-8-25
回帖
928

开拓者

 楼主| 发表于 2016-10-3 08:09:37 | 显示全部楼层
喵呜喵5 发表于 2016-10-3 00:59
如果选择物品时物品需要选择使用对象的话,界面会弹出一个队友的窗口,注意看队友窗口,它本身是半透明的, ...

也就是说这个语句的意义是,将指定窗口都放在同一张画布上,当有新窗口出现时,那一部分区域的画布就会被重新描绘,以至于旧窗口在上面的部分会消失掉?
回复

使用道具 举报

梦石
1
星屑
23241
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2016-10-4 01:51:36 | 显示全部楼层
七重 发表于 2016-10-3 08:09
也就是说这个语句的意义是,将指定窗口都放在同一张画布上,当有新窗口出现时,那一部分区域的画布就会被 ...

意思没错,但具体实现不太对
你可以参考一下 Scene_ItemBase 的 show_sub_window 和 hide_sub_window 方法,注释掉其中操作 viewport 的语句,然后看看效果,再自己理解一下

点评

原來如此!多谢指教,我現在明白这其中的道理了。原来这里是将窗口都关联在一起,然后再对显示端口进行操纵达到一并控制的目的。  发表于 2016-10-5 10:12

评分

参与人数 1星屑 +250 梦石 +1 收起 理由
RaidenInfinity + 250 + 1 楼主认可的解答

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部