我需要在MFC应用程序中显示文本。我有一个示例文本,如“在mfc应用程序中显示文本”。让我们假设我打算在其中绘制此文本的客户端窗口是如此之小(水平),在一行中唯一可以适合的文本是“显示文本”。不显示“mfc application”字样。我的问题是,如何确保这些单词显示在下一行,而不是仅仅被剪掉?我正在使用drawtext函数来显示文本。
感谢。
答案 0 :(得分:0)
默认情况下,DrawText API的行为完全符合您的要求,除非指定了DT_SINGLELINE格式。只需提供正确的lpRect参数。
http://msdn.microsoft.com/en-us/library/windows/desktop/dd162498%28v=vs.85%29.aspx
MFC CDC :: DrawText方法具有相同的行为。
使用GetClientRect函数获取窗口矩形,并将此矩形传递给DrawText方法。
答案 1 :(得分:0)
我也有你报道的问题。并按我在https://stackoverflow.com/a/29241196/383779
中解释的那样解决了这个问题首先需要使用DrawText
标记调用DT_CALCRECT
,以了解要传递给DrawText
的哪个矩形真正起作用。
这很奇怪,但......就是它的样子。 MFC ......你知道。