Project1
标题:
求教~~关于对话框选择光标的问题~~
[打印本页]
作者:
灯笼菜刀王
时间:
2008-7-17 21:33
标题:
求教~~关于对话框选择光标的问题~~
如图...
我把原来的光标矩形换成别的光标,结果,原来可以判断选择项位置从而决定Y坐标的起始变成了这样- -,y坐标直接从0开始,
如果选择项前不带句子,那正常选择,如果前面带着句子而下面是选择项,就像上图,光标直接从句子开始....
研究原来的光标矩形,也没什么特别的地方- -,为什么换成别的光标就有这样的问题了....
附,自己添加的光标脚本
def update_cursor_rect
# 光标位置不满 0 的情况下
if @index < 0 or self.active == false #自己没激活
@cr.visible = false # 使光标不可见(默认设置)
return
end
@cr.visible = true if self.visible && self.active
@cr.opacitysz(1) if @cr.opacity < 255
# 计算光标的宽度
cursor_width = self.width / @column_max - 32
# 计算光标坐标
n = $game_temp.choice_start + @index
x = (self.x + 8) + @index % @column_max * (cursor_width + 32)
#y = (self.y + 25) + @index / @column_max * 32 - self.oy
y = n * 32
# 更新光标位置
@cr.x = x
@cr.y = y
end
复制代码
上面y打#号部分是脚本的,下面的 y = n*32是原来的光标算法,不过,效果一样。 [LINE]1,#dddddd[/LINE]
版务信息:本贴由楼主自主结贴~
作者:
hitlerson
时间:
2008-7-18 00:51
y = n * 32
改下如 y = n * 32 + 16
改下Y的高度
作者:
灯笼菜刀王
时间:
2008-7-18 04:09
以下引用
hitlerson于2008-7-17 16:51:21
的发言:
y = n * 32
改下如 y = n * 32 + 16
改下Y的高度
那个,不能单纯的改高度,因为如果选择项前面没有句子,也就是直接选择的话,那光标就变偏下了。
原来的矩形如何实现的呢?不管前面有一行还是两行句子,选择项的光标都紧贴选择句子。
作者:
dbshy
时间:
2008-7-19 01:02
该Y坐标
你所说的问题家个IF即可
关于原来的是根据INDEX来判断 [LINE]1,#dddddd[/LINE]
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者:
灯笼菜刀王
时间:
2008-7-19 01:09
明白了,根据index大于3大于2判断Y坐标开始位置。- -原来这么简单~~~
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1