标题:菜鸟问题。别嫌弃
只看楼主
particle
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-10-25
 问题点数:0 回复次数:5 
菜鸟问题。别嫌弃
有这么一个问题,有个9*9得矩形格,当鼠标点击一个小格子得时候。能给一个2维数组传递数据,请问应该怎么解决

现在有几个问题。怎么让每一个小格子。对应到数组里面。

如果窗口大小改变后。格子得大小也变化了。又该怎么办

还有就是怎么让鼠标知道。我点得是那个格子

说说思路。

本人初学。不知道问题说得清楚没

高手们别嫌弃
搜索更多相关主题的帖子: 嫌弃 
2006-10-26 04:06
tornadory
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-10-26
得分:0 
个人意见,倆笨办法,不知道是不可以解决
1.自己在下面把网格设定好(坐标值都自己设置好),然后判断鼠标点击时的坐标位置是不在某个对应格子的范围内,在的话就发送消息做你想做的事,鼠标单击事件里可以做到这个事情,另这样窗口大小改变后只要在实现重画功能,它就不会受影响,逻辑坐标不会改变。
2.做成对话框的形式,没个格子用一按钮表示,应该可以实现。
2006-10-26 13:25
maoguoqing
Rank: 6Rank: 6
来 自:重庆
等 级:贵宾
威 望:28
帖 子:2980
专家分:19
注 册:2005-12-5
得分:0 
没听懂..要给2维数组传递的数据是哪里来的 ?与点击的是哪一个格子有什么关系 ?

天行健,君子以自强不息!!QQ:68660681
2006-10-26 13:29
Bekky
Rank: 3Rank: 3
等 级:新手上路
威 望:7
帖 子:354
专家分:0
注 册:2006-5-29
得分:0 
你的这个可以用ListCtrl控件,你看一下CListCtrl的方法,就应该可以明白这么做了。
不懂再问

我的编译环境为WinXp + VC 6.0 http://blog..cn/yobo
2006-10-26 14:21
luoxian_2003
Rank: 1
等 级:新手上路
威 望:2
帖 子:163
专家分:0
注 册:2006-2-22
得分:0 
你是想做扫雷一类的游戏吧?
可以定义个类CMyRect,里面定义个CRect rect 对象.然后在CMyView里定义个CMyRect myobject[9][9],然后可以在Draw里面画矩形同时把每个格子赋给rect 变量.
在OnLButtonDown()里通过point参数
for(UINT i=0;i<9;i++)
for(UINT j=0;j<9;j++)
if(myobject[i][j].rect.PtInRect(point))
当然还可以 有更高效的方法,直接
i=(point.x)/9;
j=(point.y)/9;
直接获得 if(myobject[i][j].rect.PtInRect(point))
不知道我解释清楚了没有

[此贴子已经被作者于2006-10-26 17:06:13编辑过]


天地有正气,凛烈万古存。
2006-10-26 16:57
particle
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-10-25
得分:0 

非常非常感谢各位。

2006-10-26 18:50



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-98802-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.040503 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved