查看: 2770|回复: 9

[已经解决] 这怎么换行?

[复制链接]
梦石
0
星屑
55
在线时间
84 小时
注册时间
2009-1-30
回帖
142
发表于 2014-6-16 21:42:38 | 显示全部楼层 |阅读模式

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

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

×
想显示数组
class Window_My < Window_Base
  #--------------------------------------------------------------------------
  # ● 初始化窗口
  #--------------------------------------------------------------------------
def initialize
    super(0, 0, 300, 300)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end

  #--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
  a = [*1..8]   #生成应该数组a
  for i in 0..100   #循环1-100
   a[i] = 2 * i   #给数组里的第i个单元赋值2 * i
  if a[i] % 10 == 6  #如果第i个单元与10 相除余6
      a[i] = nil    #则赋予这个单元nil
    end
  end
    self.contents.clear
    x = 0
    y = 100
    h = 300
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, h, 32,"#{a.compact}" , 0)
  end
end
结果。。。
怎么破???
QQ图片20140616214136.jpg

评分

参与人数 1星屑 +35 收起 理由
︶ㄣ牛排ぶ + 35 手动认可奖励

查看全部评分

梦石
0
星屑
55
在线时间
84 小时
注册时间
2009-1-30
回帖
142
 楼主| 发表于 2014-6-16 23:14:30 | 显示全部楼层
没人只好找你了555 @moy  

点评

moy
这个你直接搜搜“自动换行”吧,应该有挺多结果的  发表于 2014-6-16 23:33
回复

使用道具 举报

梦石
0
星屑
1547
在线时间
688 小时
注册时间
2009-11-11
回帖
2692
发表于 2014-6-17 01:22:20 | 显示全部楼层
p "123/n321"

"/n" 就是换行符,上面分两行

点评

我输出的是a.compact,代表一个数组,无法插入/n  发表于 2014-6-17 08:52

嘿。嘿。嘿
回复

使用道具 举报

梦石
0
星屑
55
在线时间
84 小时
注册时间
2009-1-30
回帖
142
 楼主| 发表于 2014-6-17 08:56:04 | 显示全部楼层
Forever火 发表于 2014-6-16 23:14
没人只好找你了555 @moy

表示各种看不懂。。。Bitmap里面也没见相关的。。。我把y = 300他就从中间一路过去了。。。
我看到有个说用if 超过多少字就换行,可我不会计算字数的命令
回复

使用道具 举报

梦石
0
星屑
55
在线时间
84 小时
注册时间
2009-1-30
回帖
142
 楼主| 发表于 2014-6-17 11:31:19 来自手机 | 显示全部楼层
Forever火 发表于 2014-6-16 23:14
没人只好找你了555 @moy

看不懂啊QAQ
回复

使用道具 举报

梦石
0
星屑
76
在线时间
1379 小时
注册时间
2012-7-5
回帖
1643

开拓者

发表于 2014-6-17 12:37:08 | 显示全部楼层
w = 2 * (width - 32) / self.contents.font.size # 回复4L,这货就是一行多少字【噗

  -fk: -azogi:
回复

使用道具 举报

梦石
0
星屑
1547
在线时间
688 小时
注册时间
2009-11-11
回帖
2692
发表于 2014-6-20 02:35:30 | 显示全部楼层
Forever火 发表于 2014-6-17 08:56
表示各种看不懂。。。Bitmap里面也没见相关的。。。我把y = 300他就从中间一路过去了。。。
我看到有个说 ...

哪里来的野路子,想换行的话,把数组转换成字符串再输出,想在哪里+“/n”就在哪加吧,输出的话最好用字符串,数组格式不可控

嘿。嘿。嘿
回复

使用道具 举报

梦石
0
星屑
1547
在线时间
688 小时
注册时间
2009-11-11
回帖
2692
发表于 2014-6-20 02:36:38 | 显示全部楼层
a.to_s 应该就能转换为 String 了

嘿。嘿。嘿
回复

使用道具 举报

薄凉看客

梦石
0
星屑
50
在线时间
1269 小时
注册时间
2010-6-20
回帖
1223
发表于 2014-6-20 04:19:38 来自手机 | 显示全部楼层
不是/n吧?是相对于/的反斜杆n才对。
这个换行是不起任何作用的。
先生成数组却不描绘,循环数组一个字符组一个字符组的描绘,并记录循环次数。
如果X坐标+循环次数×20(字体大小或矩形宽) > width-40 那么就给y坐标加上20(字体大小或者矩形高度)
即换行。

点评

正解  发表于 2014-6-20 17:41

评分

参与人数 2星屑 +145 收起 理由
︶ㄣ牛排ぶ + 100 认可答案
taroxd + 45 终于看到个正解了汗颜死

查看全部评分

回复

使用道具 举报

老黄鸡

梦石
4
星屑
45739
在线时间
7952 小时
注册时间
2009-7-6
回帖
13338

MZ评测员RM创作大赛01组委会开拓者贵宾

发表于 2014-6-20 06:52:17 | 显示全部楼层
bitmap类有一个方法。
text_size(str)会返回描绘str文字所需的Rect.

点评

管理员不留痕迹的编辑好厉害哇!!  发表于 2014-6-28 13:00
写错  发表于 2014-6-28 12:58
啊?不是text_size(str)吗?  发表于 2014-6-28 12:53
RGDirect - DirectX驱动的RGSS,点我了解.
(排满,暂停)RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部