熟悉WIN32,SDK的系统编程高手请进!绝对高难度!(20分)

  • 主题发起人 主题发起人 hurryman
  • 开始时间 开始时间
H

hurryman

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在要做这样一个模拟操作系统桌面的程序,就是
一个form上面什么都没有,当程序运行后,我的鼠标在
form上点击一下,如果鼠标左键点击的位置(x,y),我将(x,y)
转化为桌面的坐标后的(x1,y1),如果在系统的桌面(x1,y1)
处是"我的电脑"图标,那么,windows的"我的电脑"被打开.
同理,如果鼠标右键点击的位置(x,y),我将(x,y)
转化为桌面的坐标后的(x1,y1),如果在系统的桌面(x1,y1)
处是"我的电脑"图标,那么,windows的"我的电脑"的弹出
式菜单,如果鼠标左键点击的位置(x,y),我将(x,y)
转化为桌面的坐标后的(x1,y1),如果在系统的桌面(x1,y1)
处是任务栏的“开始”,那么开始菜单就弹起。
意思就是我把form当做了桌面了。
谢谢给为的参与,可以答的就帖出您的想法,不能答的请帮忙
UP一下,
 
我找到了办法,:)你多给点分我可能就.........
 
:张无忌:
你好,我还有50,都可以给你,你发你的办法发给我好吗?
wanghuiss@163.net
 
哈哈,这个不难,根据比较换一下不就行咯.
也可以试试ClientToScreen(x,y);
 
TO BeginDelphi
他要模拟桌面操作,知道了X,Y有什么用?
 
说穿了,就是幕布的**.

将当前的X,Y表示的POINTER转换成幕布的POINTER
 
可以这个呀.
1、安装一个CBT HOOK,在其中进行截屏操作,以一定比例显示在TCanvas上面。
2、在TCanvas的Onclick中,发送消息,引起相应事件。
 
你们说的和我要实现的不一样呀
 
看《WIN32 API》
 
我的办法是把自己的消息处理过程和桌面的消息处理过程共享,就是把自己的消息都转发给
桌面
 
to hurryman:
你要的是什么效果?是不是一个模仿过个桌面?
 
对,是的,就是一个模仿过个桌面
 
自:张无忌, 时间:2002-6-9 22:03:00, ID:1153094
我的办法是把自己的消息处理过程和桌面的消息处理过程共享,就是把自己的消息都转发给
桌面

可以在细些说吗?
 
我最近找到了几个函数可以做到这一点,我在调试这几个函数,资料不多哟,所以很慢
 
桌面也是有句柄的 你可以向桌面发送MOUSE消息 试试看
 
大家帮我UP呀
 
我也来UP下吧!
 
后退
顶部