递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

[视窗] 怎么传递POINT

[复制链接]

3

主题

8

帖子

19

积分

新手上路

Rank: 1

积分
19
跳转到指定楼层
楼主
发表于 11 小时前 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
刚玩火山几天,遇到WindowFromPoint函数传入POINT结构体参数问题,起初用易语言的方式硬传2个4字节整数,后来查火山64不适用,之后用火山的位置类(这个应该是POINT吧)不行,自建类也不行,再后查查才发觉位置类和自建类都是占32字节的,POINT只占8字节,最后用易语言的方式才解决了WindowFromPoint正常调用 纯新手请问有没有更直接的方法
回复

使用道具 举报

29

主题

2699

帖子

9417

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
9417
沙发
发表于 7 小时前 | 只看该作者
WindowFromPoint这个函数比较非主流,因为它参数要求的不是结构体指针。
火山用这种方式调用函数,无论参数类型是“结构类”还是“本地结构”,传的都是结构体指针。

不过还是有个“本地值类型”类型可以用,但本地值类型反过来就不太兼容要求传结构指针的函数了。

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

类 POINT <公开 @别名类型 = 本地值类型 @别名 = "POINT">
{
    变量 x <公开 类型 = 整数 @输出名 = "x">
    变量 y <公开 类型 = 整数 @输出名 = "y">

    #
}

评分

参与人数 1金钱 +4 收起 理由
GodAnubis + 4 笔记,学会了,赞

查看全部评分

回复

使用道具 举报

466

主题

2万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
46510
板凳
发表于 6 小时前 | 只看该作者
这个方法比较简单,可以直接嵌入弄一下。

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

  2. 方法 GetWindowAtPoint <类型 = 变整数 @禁止流程检查 = 真>
  3. 参数 横坐标 <类型 = 整数>
  4. 参数 纵坐标 <类型 = 整数>
  5. {
  6.     @ POINT pt = {@<横坐标>, @<纵坐标>};
  7.     @ return (INT_P)WindowFromPoint(pt);

  8. }
复制代码

评分

参与人数 1金钱 +4 收起 理由
GodAnubis + 4 笔记,学会了@&lt;&gt;引用火山参数和变量,赞.

查看全部评分

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-20 16:01 , Processed in 0.085592 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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