标题:关于位图显示的问题(BitBlt)
只看楼主
tjf0604
Rank: 2
等 级:论坛游民
帖 子:8
专家分:15
注 册:2009-5-31
结帖率:100%
 问题点数:0 回复次数:2 
关于位图显示的问题(BitBlt)
我用一个二维数组(map[n][n])来保存显示时某个位置显示哪个位图
用的两个for循环和一个switch语句来显示
int i,j;
    for(i=0;i<MAP_X;i++)
        for(j=0;j<MAP_Y;j++)
        {
            switch(map[i][j])
            {
            case 1:
                BitBlt(mdc,i*B_X,j*B_Y,B_X,B_Y,Hdcw,0,0,SRCCOPY);
                break;
            case 2:
                BitBlt(mdc,i*B_X,j*B_Y,B_X,B_Y,Hdcm,0,0,SRCCOPY);
                break;
            case 3:
                BitBlt(mdc,i*B_X,j*B_Y,B_X,B_Y,Hdcb,0,0,SRCCOPY);
                break;
            case 9:
                BitBlt(mdc,i*B_X,j*B_Y,B_X,B_Y,Hdcrole,0,0,SRCCOPY);
                break;
            }
        }
就是上头这些代码,B_X和B_Y是加载的位图的大小。
程序执行后显示的窗口中x和y反转了
就是map[2][4]的位置(2*B_X,4*B_Y)我是想要显示1号图的,但是却在显示时在(4*B_Y,2*B_X)的位置显示了1号图,但是却在(2*B_X,4*B_Y)的位置显示了map[4][2]标识的图
这个是怎么回事?
我刚学这个没多久,望知道的解释下,谢谢了

[ 本帖最后由 tjf0604 于 2009-11-24 20:32 编辑 ]
搜索更多相关主题的帖子: BitBlt 位图 
2009-11-24 20:30
cuihaoyun
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2009-11-10
得分:0 
行列弄错了吧?
2009-12-01 23:55
haizeng
Rank: 2
来 自:xdpsj.com
等 级:等待验证会员
帖 子:61
专家分:36
注 册:2009-11-30
得分:0 
恩  看看

[url=http://www./]石料生产线[/url]
[url=http://www.]破碎机[/url]
2009-12-02 08:59



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




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

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