递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 4531|回复: 2
打印 上一主题 下一主题

[视窗] 【解决方案】火山视窗文本型转换为LPCWSTR(lstrlenW封装)

[复制链接]

444

主题

1万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
40533
跳转到指定楼层
楼主
发表于 2023-5-20 09:26:09 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
LPCWSTR一般出现在Unicode api中,也就是W版本的api,例如:lstrlenW 用来获取字符串长度。







在火山中想对于A版本的来说就简单很多……
直接@<参数_文本>.GetText () 取出火山c++的文本类型后,强制转换成LPCWSTR即可。


封装如下:

<火山程序 类型 = "通常" 版本 = 1 />

方法 取文本长度W <公开 类型 = 整数 @禁止流程检查 = 真>
参数 参数_文本 <类型 = 文本型>
{
    @ return lstrlenW((LPCWSTR)@<参数_文本>.GetText ());
}




PS:一般都没问题,有问题的可以发帖问……



本帖被以下淘专辑推荐:

安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

26

主题

1900

帖子

6926

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
6926
板凳
发表于 2023-5-20 14:18:31 | 只看该作者
server 发表于 2023-5-20 12:56
方法 _寻找窗口
参数 类名
参数 标题

<火山程序 类型 = "通常" 版本 = 1 />

方法 _寻找窗口 <公开 静态 类型 = 变整数 @禁止流程检查 = 真>
参数 类名 <类型 = 文本型 @默认值 = 空对象>
参数 标题 <类型 = 文本型 @默认值 = 空对象>
{
    @ return (INT_P)FindWindowW(@<类名>.IsEmpty() ? NULL : @<类名>.GetText(), @<标题>.IsEmpty() ? NULL : @<标题>.GetText());
}


可以再改一下,因为这两个参数有需要用NULL
回复

使用道具 举报

111

主题

613

帖子

2178

积分

金牌会员

Rank: 6Rank: 6

积分
2178
QQ
沙发
发表于 2023-5-20 12:56:52 | 只看该作者
<火山程序 类型 = "通常" 版本 = 1 />

方法 _寻找窗口 <公开 静态 类型 = 变整数 @嵌入式方法 = "">
参数 类名 <类型 = 文本型 @默认值 = 空对象>
参数 标题 <类型 = 文本型 @默认值 = 空对象>
{
    @ (INT_P)FindWindowW((LPCWSTR)@<类名>.GetText(),(LPCWSTR)@<标题>.GetText())
}

你试试这个。
专业承接18-98岁xx的心理及生理教育辅导。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-11-24 13:52 , Processed in 0.100961 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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