我正在尝试再写第二行,但我不知道该使用哪个代码。
我尝试过使用\r\n、\n、\r 等, 但他们都没有工作。
感谢所有帮助过的人! :)
这是我的代码的一部分。 (我也包括了标题。)
HINSTANCE g_hInst;
LPCTSTR lpszClass = L"HelloAPI";
LPCTSTR ChildClassName = L"ChildWin";
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
LRESULT CALLBACK ChildWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpszCmdParam,
int nCmdShow)
hWnd=CreateWindow(lpszClass,
L"Visual C++",
WS_OVERLAPPEDWINDOW | WS_VISIBLE,
200, 200,
600, 600,
(HWND)NULL,
(HMENU)NULL,
NULL);
ShowWindow(hWnd,nCmdShow);
while(GetMessage(&Message,0,0,0)) {
TranslateMessage(&Message);
DispatchMessage(&Message);
}
return Message.wParam;
}
LRESULT CALLBACK WndProc(HWND hWnd, UINT iMessage,
WPARAM wParam, LPARAM lParam)
{
LPCTSTR text = L"Visual C++201934-243369";
switch(iMessage) {
case WM_PAINT:
{
PAINTSTRUCT ps;
HDC hdc = BeginPaint(hWnd, &ps);
TextOut(hdc,100, 100, text, lstrlen(text));
EndPaint(hWnd,&ps);
return 0;
}
最佳答案
TextOut
不处理输入字符串中的换行符。使用 DrawText
相反,指定 DT_WORDBREAK
标志。
元评论:现在你明白我们为什么需要你发布你的代码了。
关于c++ - 编写另一个以 LPCTSTR 开头的文本行的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56504963/