MFC改变 随着控件大小变化 改变控件字体的大小
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC改变 随着控件大小变化 改变控件字体的大小相关的知识,希望对你有一定的参考价值。
CWnd *win = GetWindow(GW_CHILD);
while (win)
CRect rect;
win->GetWindowRect(rect);
ScreenToClient(rect);
rect.left = (int)(float(rect.left)*x);
rect.right = (int)(float(rect.right)*x);
rect.top = (int)(float(rect.top)*y);
rect.bottom = (int)(float(rect.bottom)*y);
win->MoveWindow(rect);
CPaintDC dc(this);
CFont *CurFont = dc.GetCurrentFont();
LOGFONT lf;
memset(&lf, 0, sizeof(LOGFONT));
CurFont->GetLogFont(&lf);
lf.lfHeight = (int)(lf.lfHeight*y);
lf.lfWidth = (int)(lf.lfWidth*x);
lf.lfWeight = 400;
CFont font;
font.CreateFontIndirect(&lf);
win->SetFont(&font);
win = win->GetWindow(GW_HWNDNEXT);
控件大小改变了 但是字体改变是固定的不会随着控件大小改变而改变
你有例子么
追答sorry,没有例程。
参考技术B你要自己创建字体,根据大小来创建才可以改变。这里有个创建字体的例子。
http://blog.csdn.net/rmxming/article/details/10416069MFC中TabCtrl控件怎么随着窗体的大小变化而变化?
我在做一个项目,需要最大化显示,但是初始界面不可能就画很大,所以在想怎么让标签控件放大,哪位大神不吝赐教?
参考技术A 写在Onsize里 获取tab的rect,然后跟界面算一下比例 然后movewindow 参考技术B 这有个MFC tabctrl的例子,当窗口执行WM_SIZE时,改变tabctrl的大小即可,用MoveWindow.http://www.codeproject.com/Articles/93521/MultiPaneCtrl追问
标签控件我已经能最大化了,但是子窗口里的控件怎么随窗口大小改变呢 ,有例子吗?
追答我给你的那个例子就有啊,每个标签控件都有个子窗口的。你仔细看看。。。
本回答被提问者采纳以上是关于MFC改变 随着控件大小变化 改变控件字体的大小的主要内容,如果未能解决你的问题,请参考以下文章
mfc 窗口大小变化时,如何让窗口内部控件也一起随比例改变位置?