VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 655|回复: 8

[求助] vc6 窗口显示像素怎么设置

[复制链接]
61_avatar_middle
在线会员 发表于 2016-2-25 11:43:44 | 显示全部楼层 |阅读模式
3驿站币
我在对话框中想要动态生成一个CWND派生的窗口 并显示 ,当我为这个窗口添加鼠标移动事件后 在这窗口中鼠标移动后 我可以在其它的文本框中显示座标,此座标是按像素个数显示的,并且调用 setpixel 设置一个像素点后也是一个像素, 我想让这个窗口调用setpixel 后 窗口上的每个点的显示是4个临近像素,然后鼠标移动后也是以这个为单位增量,不知怎么操作, 谢谢。





上一篇:编写x64程序和win32有什么区别?
下一篇:关于MFC CMFCDynamicLayout类的用途
51_avatar_middle
online_admins 发表于 2016-2-25 11:58:14 | 显示全部楼层
鼠标移动事件 这个添加完了吗?
61_avatar_middle
ico_lz  楼主| 发表于 2016-2-25 16:24:12 | 显示全部楼层
Syc 发表于 2016-2-25 11:58
鼠标移动事件 这个添加完了吗?

你好 我添加好了 正常情况下 我鼠标每一动一个像素 文本框里也会相应的把这个鼠标座标显示,但是我想通过设置什么函数或参数 让鼠标每移动两个像素(上或下 两个方向)鼠标事件的传递过来的CPOINT增加1,不知道怎么弄。谢谢。
61_avatar_middle
ico_lz  楼主| 发表于 2016-2-25 16:38:44 | 显示全部楼层
相当于在窗口内的操作都为两个像素为单位 比如鼠标移动两个像素 事件返回 增量1  ,如果我要画一个点到这个窗口内用 SetPixel()函数画1点 那显示时也是4个像素。
51_avatar_middle
online_admins 发表于 2016-2-25 18:44:25 | 显示全部楼层
jsszdfdn 发表于 2016-2-25 16:24
你好 我添加好了 正常情况下 我鼠标每一动一个像素 文本框里也会相应的把这个鼠标座标显示,但是我想通过 ...

那当鼠标移动一个像素的时候,你怎么处理?是还回归到原来的位置吗?
61_avatar_middle
ico_lz  楼主| 发表于 2016-2-26 09:14:55 | 显示全部楼层
你好 按常规我可以计算鼠标每移动两个像素然后作为一个单位操作或显示,但是这样做我觉的还要牵涉其它操作如 画点 画点函数每次为一个像素 所以我还要画四个点,就是一个点放大了一倍,所以我想用系统提供的映射功 将这些操作变得简单些,但我不知道用什么方法 将将窗口视图区的操作放大一倍 ,这样所有GDI操作都像放大了。
51_avatar_middle
online_admins 发表于 2016-2-26 11:28:43 | 显示全部楼层
jsszdfdn 发表于 2016-2-26 09:14
你好 按常规我可以计算鼠标每移动两个像素然后作为一个单位操作或显示,但是这样做我觉的还要牵涉其它操作 ...

说实话还是没太理解你的需求,是类似系统放大镜的操作吗?
61_avatar_middle
ico_lz  楼主| 发表于 2016-2-26 11:53:06 | 显示全部楼层
Syc 发表于 2016-2-26 11:28
说实话还是没太理解你的需求,是类似系统放大镜的操作吗?

你好 平常对窗口的操作都是以像素为单位的 比如画一个点那屏幕就一个像素点亮,  鼠标在窗口移动时返回的座标也是以像素为单位的,鼠标移动一个像素 ,返回值增量1,那在什么情况下 我画一个点后 会出现4个点 ,就是这个点放大了一倍,(然后鼠标在此窗口中移动2个像素时 鼠标移动事件返回座标1个单位的变化,就是鼠标认为两个像素为原来的一个单位),就类似于屏幕放大吧,不过我想通过系统功能如GDI操作来完成转换,谢谢你的关注!
23_avatar_middle
在线会员 发表于 2016-2-26 13:16:53 | 显示全部楼层
说实话还是没太理解你的需求,是类似系统放大镜的操作吗?
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-5-21 09:44

Powered by Discuz! X3.4

© 2009-2019 cctry.com

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