aardio 官方社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 10793|回复: 3

如何获取鼠标在运行窗口上得相对位置?

[复制链接]

7

主题

0

回帖

44

积分

新手入门

积分
44
发表于 2012-5-16 15:37:11 | 显示全部楼层 |阅读模式
    大家好,我正在做一个五子棋游戏,已经在程序窗口中画了棋盘,现在需要通过鼠标点击获取位置,然后开始画棋子,但是用graphics.fillEllipseI( Brush, x,y,tx,ty)函数中参数的x,y都是在运行的程序窗口的相对位置开始画图,而win.getMessagePos(lparam)获取的是鼠标在整个屏幕中的位置。所以我想知道有没有一种画图像的参数,输入的是整个屏幕的坐标而不是相对运行窗口的坐标呢?或者说有没有鼠标按键操作函数可以返回的是相对我的窗口,在窗口中的位置呢?或者我可以以整个屏幕作为画板,var graphics=gdip.graphics( x)中参数x输入整个屏幕的句柄。
谢谢大家

25

主题

89

回帖

732

积分

三级会员

积分
732
发表于 2012-5-17 09:39:00 | 显示全部楼层
占位等,我也研究这个,怎么获取游戏窗口,鼠标。应该需要bind窗口吧,不过不知道怎么下手。

0

主题

50

回帖

375

积分

二级会员

积分
375
发表于 2012-5-17 10:15:49 | 显示全部楼层
这不就是2个直角坐标系转换吗
屏幕坐标系原点0,0,相对坐标系原点topleftx,toplefty=win.getPos(程序窗口句柄,true)

屏幕坐标 x=相对坐标x+topleftx
屏幕坐标 y=相对坐标y+toplefty

75

主题

767

回帖

5045

积分

六级会员

The only one

积分
5045
发表于 2012-5-17 12:31:51 | 显示全部楼层
无标题.png
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|aardio.com|aardio 官方社区 ( 皖ICP备09012014号 )

GMT+8, 2025-3-20 02:38 , Processed in 0.059622 second(s), 25 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

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