point.x=i/pow(2, n);
point.y=j/pow(2, n);
这两个结果基本是0(整数除法)。如果这段代码放在OnPaint()中,请用CPaintDC而不是CClientDC。
如果这段代码放在OnDraw()中,请用传入的pDC而不是CClientDC dc。
如果这段代码没有放在OnPaint()或者OnDraw()中,请放到OnPaint()或者OnDraw()中。
point.y=j/pow(2, n);
这两个结果基本是0(整数除法)。如果这段代码放在OnPaint()中,请用CPaintDC而不是CClientDC。
如果这段代码放在OnDraw()中,请用传入的pDC而不是CClientDC dc。
如果这段代码没有放在OnPaint()或者OnDraw()中,请放到OnPaint()或者OnDraw()中。
{
CMyDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here CRect rc;
GetClientRect (&rc);
int n;
int L,H;
int i,j,k;
L=rc.right-rc.left;
H=rc.bottom-rc.top;
point.x=L/2;
point.y=H/2;
for (n=0;n<=5;n++)
{
for (i=1;i<pow(2, n);i++)
for (j=1;j<pow(2, n);j++)
{
point.x=i/pow(2, n);
point.y=j/pow(2, n);
if(point.x/2==0||point.y/2==0)
continue;
k=2*pow(2, n);
//pDC->LineTo
pDC->MoveTo(point.x-1/k*L,point.y-1/k*H);
pDC->LineTo(point.x-1/k*L,point.y+1/k*H);
pDC->MoveTo(point.x-1/k*L,point.y);
pDC->LineTo(point.x+1/k*L,point.y);
pDC->MoveTo(point.x+1/k*L,point.y+1/k*H);
pDC->LineTo(point.x+1/k*L,point.y-1/k*H);
}
}
}
修改后的程序,还是没有结果,不知道为什么了.
point.x=i/pow(2, n);
point.y=j/pow(2, n);
不要用CPoint这个类,自己写一个结构体,因为这个类的成员都是int
typedef struct MyPoint
{
double x,y;
};