要制作STATIC标签,我可以使用:
HWND hwnd_ques=CreateWindow(
TEXT("STATIC"),
TEXT("Yao happy swallow is"),
WS_VISIBLE | WS_CHILD,
10,
70,
180,
30,
hwnd,
NULL,
(HINSTANCE)GetWindowLongPtr(hwnd, GWL_HINSTANCE),
NULL);
在调用CreateWindow
之后,我使用WM_SETFONT
msg设置了标签的字体和字号(成功运行:)>
TEXT,也就是说,我将使标签宽度适合其文本宽度,并根据以下内容分配EDIT的X位置标签的位置和宽度。如果我手动指定标签宽度,则不能确保标签宽度恰好适合文本宽度,因为我实际上不知道该标签的文本宽度。SendMessage(hwnd_ques, WM_SETFONT, (WPARAM)font1, static_cast<LPARAM>(MAKELONG(TRUE, 0))); //definition of font1 is not shown here but it worked successfully
但是,我要插入一个STATIC标签的
控件紧接
我想知道如何使标签宽度完全适合其文本宽度
。也许我可以获取文本宽度,因为知道文本的内容,字体和字体大小。在获得文本宽度之后,我可以回头再设置标签的宽度。-
目的
我要插入EDIT控件紧接在后
静态标签的文本-
编辑
搜索了互联网,并说要使用GetTextExtentPoint32
SIZE textSize; GetTextExtentPoint32(GetDC(hwnd), text, strlen(text), &textSize);
但是我在哪里可以在此功能中指定字体/字体大小?
要制作STATIC标签,我可以使用:HWND hwnd_ques = CreateWindow(TEXT(“ STATIC”),TEXT(“ Yao happy swallow is”),WS_VISIBLE | WS_CHILD,...