设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1985|回复: 3
打印 上一主题 下一主题

[RMVX发布] print的实现

[复制链接]

Lv1.梦旅人

梦石
0
星屑
155
在线时间
332 小时
注册时间
2013-7-6
帖子
356
跳转到指定楼层
1
发表于 2015-6-8 23:18:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
没有对p和print做以区分(懒了- -||)
不知道为什么,我的rmvx没办法用p和print显示小窗口,不知道是不是通病。于是我草草写了个代码- -|||
  1. MessageBox=Win32API.new("user32.dll","MessageBoxA","lppl","l")
  2. FindWindow=Win32API.new("user32.dll","FindWindowA","pp","l")
  3. TITLE="Project1"#游戏标题名
  4. def p(m)
  5.   m="nil" if m.nil?
  6.   m=m.to_s
  7.   a=FindWindow.call("",TITLE)
  8.   MessageBox.call(a,EasyConv.u2s(m),"message",0)
  9. end
  10. def print(m)
  11.   p m
  12. end
  13. module EasyConv
  14. CP_ACP = 0
  15. CP_UTF8 = 65001
  16. def self.u2s(text)
  17.    m2w = Win32API.new('kernel32', 'MultiByteToWideChar', 'ilpipi', 'i')
  18.    w2m = Win32API.new('kernel32', 'WideCharToMultiByte', 'ilpipipp', 'i')
  19.    len = m2w.call(CP_UTF8, 0, text, -1, nil, 0)
  20.    buf = "\0" * (len*2)
  21.    m2w.call(CP_UTF8, 0, text, -1, buf, buf.size/2)
  22.    len = w2m.call(CP_ACP, 0, buf, -1, nil, 0, nil, nil)
  23.    ret = "\0" * len
  24.    w2m.call(CP_ACP, 0, buf, -1, ret, ret.size, nil, nil)
  25.    return ret
  26. end
  27. end

  28. p 'Hello'
复制代码

点评

其实可以用MessageBoxW, 这样utf82wide就只有一行了 str.unpack("U*").pack("S*")  发表于 2015-6-9 09:37
偶是熬夜学编程的傻子

Lv3.寻梦者 (版主)

八宝粥的基叔

梦石
0
星屑
4684
在线时间
5240 小时
注册时间
2009-4-29
帖子
14318

贵宾

2
发表于 2015-6-9 09:33:35 | 只看该作者
VX一直都可以p和print小窗口的喵~
《逝去的回忆3:四叶草之梦》真情发布,欢迎点击图片下载试玩喵。

《逝去的回忆3》的讨论群:
一群:192885514
二群:200460747
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

3
发表于 2015-6-9 11:52:23 | 只看该作者
我一直认为p和print的区别是输出"XXX"的时候会不会带上""

点评

双引号有两重含义 建议chd菊苣仔细想想动手试试  发表于 2015-6-10 21:08
。。。在VA上测还是都可以?  发表于 2015-6-10 21:06
print "\"XXX\""  发表于 2015-6-9 17:56
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

4
发表于 2015-6-9 21:55:49 | 只看该作者
写个 inspect 区分一下,代码反而个人更简单的说
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-14 13:41

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表