我在对话框下做了一个编辑框,因为编辑框比较大,原始的字的输出比较小,不想改变编辑框的大小,想知道怎么把输入的字的放大一些,有没有简单一些的方法??
谢谢!!!
最简单的方法是把窗体的字体大小变大,这样不仅是编辑框,该窗体内的所有字体都会变大。
编辑框变大了可是字还没有变呀,再问一下啊,自定义字体在什么地方呢,找不到啊
windowsx.h 中的宏SetWindowFont(hwEdit, hFont, fbRedraw),== 直接向EDIT发送WM_SETFONT
窗口初始化的时候调用如下代码
//设置号码输入框的字体高度和编辑框一样高
RECT rect;
CEdit *edit = (CEdit*)(GetDlgItem(IDC_EDT_CALLCMD));
edit->GetWindowRect (&rect);
LOGFONT lf;
static CFont font;
memset( &lf, 0, sizeof(lf) );
lf.lfHeight = rect.bottom - rect.top;//改变字体高度,和矩形框一样高
font.CreateFontIndirect(&lf);
edit->SetFont (&font, TRUE);
七楼的方法可行,这样可以改变编辑框中字体的大小,而不必让对话框中所有的字体都变化
CFont font ;
font.CreateFont(..);
GetDlgItem(ID)->SetFont(&font,TRUE)就可以了
NetSniffer 可不可以详细说明一下
我写的不是用mfc 方法
我写的方法如下:
HWND hwndViewer;
HDC hdc;
HFONT hFont;
LOGFONT lf;
hwndViewer = GetDlgItem(hWnd, ID_SCRIPTLIST);
hdc = GetDC(hWnd);
lf.lfHeight = -1 * (30 * GetDeviceCaps(hdc, LOGPIXELSY) / 72);
hFont = CreateFontIndirect(&lf);
DeleteDC(hdc);
SendMessage(hwndViewer, WM_SETFONT, (WPARAM)hFont, true);
但是不成功 请指教