c++ win32 输出文本

标签 c++ visual-studio winapi

我使用 Visual Studio C++ 2008 创建了包含完整窗口代码的项目。我不知道如何将文本输出到窗口。我的意思是我有带菜单栏的全功能窗口,在菜单栏下面有正文,我试图输出正文中的文本,但是如何?

最佳答案

此页面有一个关于如何在 Win32 中执行此操作的示例:
http://www.rohitab.com/discuss/index.php?showtopic=11454

下面的代码是窗口的窗口过程,如果您注意到 WM_PAINT(即告诉窗口绘制自身的消息)代码只是将文本绘制到设备上下文,这是客户区域 window 。

LRESULT CALLBACK WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) {
        HDC hdc;
        PAINTSTRUCT ps;
        LPSTR szMessage = "darkblue 0wNz j00!";
        switch(Message) {
                case WM_PAINT:
                        hdc = BeginPaint(hwnd, &ps);
                        TextOut(hdc, 70, 50, szMessage, strlen(szMessage));
                        EndPaint(hwnd, &ps);
                        break;
                case WM_CLOSE:
                        DestroyWindow(hwnd);
                        break;
                case WM_DESTROY:
                        PostQuitMessage(0);
                        break;
                default:
                        return DefWindowProc(hwnd, Message, wParam, lParam);
        }
        return 0;
}

关于c++ win32 输出文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3432457/

相关文章:

c++ - Win32 API 中的游戏循环

dll - ERROR_INVALID_ORDINAL 究竟是什么意思?

c++ - GDI+ 是否有标准图像编码器 CLSID?

c# - 使用 Visual Studio Team Services (VSTS) 运行带有 SSL 错误的 Web/负载测试

c++ - Netbeans下无DLL依赖Mingw

visual-studio - “无法找到或打开 pdb 文件”Visual Studio C++ 2013

c# - 当我在 Visual Studio 中创建 .net core 项目时,我没有获得 TreeView

c# - 我在哪里可以找到 XFS api

c++ - *((unsigned char*) ... ) 是什么意思?

c++ - vs 2013 C++ 的 opencv 问题