| 
本帖最后由 jhhuang 于 2017-7-25 22:09 编辑
x
加入我们,或者,欢迎回来。您需要 登录 才可以下载或查看,没有帐号?注册会员  
 今天在看Window_Base类时发现一个奇葩的问题。脚本如下:
 
 
 #--------------------------------------------------------------------------  # ● 绘制图标  #     enabled : 有效的标志。false 的时候使用半透明效果绘制  #--------------------------------------------------------------------------  def draw_icon(icon_index, x, y, enabled = true)    bitmap = Cache.system("Iconset")    rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)    contents.blt(x, y, bitmap, rect, enabled ? 255 : translucent_alpha)  end  #--------------------------------------------------------------------------  # ● 绘制角色肖像图  #     enabled : 有效的标志。false 的时候使用半透明效果绘制  #--------------------------------------------------------------------------  def draw_face(face_name, face_index, x, y, enabled = true)    bitmap = Cache.face(face_name)    rect = Rect.new(face_index % 4 * 96, face_index / 4 * 96, 96, 96)    contents.blt(x, y, bitmap, rect, enabled ? 255 : translucent_alpha)    bitmap.dispose  end
#-------------------------------------------------------------------------- 
  # ● 绘制图标 
  #     enabled : 有效的标志。false 的时候使用半透明效果绘制 
  #-------------------------------------------------------------------------- 
  def draw_icon(icon_index, x, y, enabled = true) 
    bitmap = Cache.system("Iconset") 
    rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24) 
    contents.blt(x, y, bitmap, rect, enabled ? 255 : translucent_alpha) 
  end 
  #-------------------------------------------------------------------------- 
  # ● 绘制角色肖像图 
  #     enabled : 有效的标志。false 的时候使用半透明效果绘制 
  #-------------------------------------------------------------------------- 
  def draw_face(face_name, face_index, x, y, enabled = true) 
    bitmap = Cache.face(face_name) 
    rect = Rect.new(face_index % 4 * 96, face_index / 4 * 96, 96, 96) 
    contents.blt(x, y, bitmap, rect, enabled ? 255 : translucent_alpha) 
    bitmap.dispose 
  end 
 默认脚本在绘制角色肖像图,描绘完毕后会释放bitmap。但是在绘制图标时,却不释放。
 
 那是不是代表,我们平时用Cache建立的所有图像,都没有必要释放?
 |