Project1

标题: 请教一个关于窗口翻页的问题 [打印本页]

作者: torysir    时间: 2021-11-11 23:56
标题: 请教一个关于窗口翻页的问题
萌新抄了一个战斗界面显示特技(就是属性)的窗口
因为属性特别多,现在让这个窗口里的内容可以翻页,请问如何实现呢?
谢谢
以下是代码:
class Window_Battle_Skill<Window_Selectable
   def initialize
       super(0,0,350,600)
       self.contents=Bitmap.new(width-32,height-32)
      
       self.visible=false
       self.contents.font.size=17
       refresh
   end
   def refresh
       hangjianju=24  
       self.contents.font.size=17
       self.contents.clear
       if $skill_xuhao.size>0
         y=0
         for i in $skill_xuhao
           
           name=$data_items[i].name
           shuzu1=name.scan(/./)
           
           unless $data_items[i].element_set.include?(150)
                  shuzu2=$data_items[i].description.scan(/./)
           else
                  shuzu2=$game_variables[488][i].scan(/./)
           end      
           x_initia=0  
           x_temp=0   
           self.contents.font.color=Color.new(32,255,79)  
           for j in 0...shuzu1.size
              width_next=self.contents.text_size(shuzu1[j]).width
              if x_temp+width_next>width-24
                 y+=hangjianju   
                 x_temp=0  
              end   
              self.contents.draw_text(x_temp,y,width_next,24,shuzu1[j])
              x_temp+=width_next
           end
           y+=32
           x_temp=0
           self.contents.font.color=Color.new(255,255,255)
           for j in 0...shuzu2.size
              width_next=self.contents.text_size(shuzu2[j]).width
              if x_temp+width_next>width-24
                 y+=hangjianju   
                 x_temp=0  
              end   
              self.contents.draw_text(x_temp,y,width_next,24,shuzu2[j])
              x_temp+=width_next
           end
           y+=40
        end
      end
       end
      end





作者: torysir    时间: 2021-11-11 23:58

作者: torysir    时间: 2021-11-12 14:41
唉,木有人了嘛
作者: guoxiaomi    时间: 2021-11-12 19:59
window_selectable本来就可以翻页吧?应该尝试定义draw_item方法而不是整个refresh
作者: torysir    时间: 2021-11-13 16:39
guoxiaomi 发表于 2021-11-12 19:59
window_selectable本来就可以翻页吧?应该尝试定义draw_item方法而不是整个refresh

右边的箭头是可以移动的
我想是左边的框子可以翻页,我定义了按键他也不行
作者: guoxiaomi    时间: 2021-11-13 18:35
那试一下
  1. self.index = 0
  2. self.active = true
复制代码
把光标移到最上面并激活光标闪烁
作者: torysir    时间: 2021-11-13 20:07
guoxiaomi 发表于 2021-11-13 18:35
那试一下把光标移到最上面并激活光标闪烁

要不我把工程给您,您帮忙看下?
作者: guoxiaomi    时间: 2021-11-13 23:07
可以,尽量传个小点的工程……顺便我把你等级提升到2级了。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1