荔园在线
荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀
[回到开始]
[上一篇][下一篇]
发信人: oopilix (优雅的), 信区: Visual
标 题: [合集]CDC::GetViewportExt()c ┅
发信站: 荔园晨风BBS站 (Thu Aug 7 10:58:08 2003), 站内信件
bigone (好好学习) 于Wed Jul 30 15:40:44 2003提到:
有以下代码:
void CTestFieldView::OnDraw(CDC* pDC)
{
CTestFieldDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
char buf[100];
CSize field;
field = pDC->GetViewportExt();
itoa(field.cx,buf,10);
pDC->TextOut(0,0,buf);
itoa(field.cy,buf,10);
pDC->TextOut(0,30,buf);
}
本来想取得客户窗口的长和宽,然后显示,结果发现长和宽都是1,
怎么回事啊?
oopilix (优雅的) 于Wed Jul 30 15:52:48 2003提到:
不建议这样。如果你想返回客户区的长和宽,先
CRect *Rect=new CRect();
然后>GetWindowRect();往里面填充。
GetViewportExt返回来的应该是坐标系的标尺单位的大小。
有以下代码:
void CTestFieldView::OnDraw(CDC* pDC)
{
CTestFieldDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
char buf[100];
CSize field;
field = pDC->GetViewportExt();
itoa(field.cx,buf,10);
pDC->TextOut(0,0,buf);
itoa(field.cy,buf,10);
pDC->TextOut(0,30,buf);
}
本来想取得客户窗口的长和宽,然后显示,结果发现长和宽都是1,
怎么回事啊?
contonazhao (烦恼的松鼠仔) 于Wed Jul 30 15:54:00 2003提到:
pDC->TextOut(0,0,buf);
oopilix (优雅的) 于Wed Jul 30 15:55:25 2003提到:
CString a;
a.Format("The size.x is %d",filed.cx);
pDC->TextOut....好了。
pDC->TextOut(0,0,buf);
bigone (好好学习) 于Wed Jul 30 16:01:39 2003提到:
哦,还有这样的用法,呵呵
CString a;
a.Format("The size.x is %d",filed.cx);
pDC->TextOut....好了。
pDC->TextOut(0,0,buf);
oopilix (优雅的) 于Wed Jul 30 16:09:09 2003提到:
呵
哦,还有这样的用法,呵呵
CString a;
a.Format("The size.x is %d",filed.cx);
pDC->TextOut....好了。
pDC->TextOut(0,0,buf);
littlebao (爱拼才会赢) 于Thu Jul 31 16:22:55 2003提到:
GetViewPortExt()返回的应该是视口的范围,
是与坐标映射方式相关的值,在默认下(MM_TEXT)是(1,1)
为什么习惯在堆上放变量,个人觉得用CRect rect ;比较好不用自己维护内存^_^
oopilix (优雅的) 于Thu Jul 31 16:25:44 2003提到:
有时候想动态产生一些的话
CRect rect 有时候是不能放到动态的函数里面的。
GetViewPortExt()返回的应该是视口的范围,
是与坐标映射方式相关的值,在默认下(MM_TEXT)是(1,1)
为什么习惯在堆上放变量,个人觉得用CRect rect ;比较好不用自己维护内存^_^
Chengal (浩气冲天) 于Thu Jul 31 22:53:37 2003提到:
CRect rect;
GetClientRect(&rect);
可通过rect对象获取客户端的大小
[回到开始]
[上一篇][下一篇]
荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店