2

我正在 WinAPI 上创建自己的小程序(练习 WIN API 编程),我想创建一个“关于我们”的框,比如告诉它谁构建了程序,它是哪个版本等等。 ..

我能够成功地创建窗口,虽然我只能创建一个空窗口。我想知道如何在框中写文本?

这是我创建对话框的函数,其中 ghInstance 是窗口的实例:

void CreateDialogBox(HWND hwnd)
{
CreateWindowEx(WS_EX_DLGMODALFRAME | WS_EX_TOPMOST,  TEXT("DialogClass"), TEXT("About Us"), WS_VISIBLE | WS_SYSMENU | WS_CAPTION , 100, 100, 200, 150, NULL, NULL, ghInstance,  NULL);
}

那么我怎样才能在那个空的窗口里写一些东西呢?

谢谢!

4

2 回答 2

1

本教程由 Microsoft (MSDN) 自己提供,应该会派上用场:

http://msdn.microsoft.com/en-us/library/vstudio/bb384843.aspx

请注意该WM_PAINT部分。那是为了绘制简单的文本。

还可以在窗口上创建控件,例如: C++ Win32 Multiline static label

于 2013-08-20T16:45:41.140 回答
0

如果您使用的是 MS VC++,您可以尝试在资源脚本中编辑预制的 About us。或者你在资源脚本中手工制作它。

DialogboxName DIALOGEX 0, 0, 170, 62
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "About Us"
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
    ICON            128,IDC_STATIC,14,14,21,20
    LTEXT           "Program by you, Version 1.0",IDC_STATIC,42,14,114,8,SS_NOPREFIX
    LTEXT           "Copyright (C) 2016",IDC_STATIC,42,26,114,8
    DEFPUSHBUTTON   "OK",IDOK,113,41,50,14,WS_GROUP
END

您可以参考 Charles Petzold Windows 编程书,第 5 版。

于 2016-01-10T15:59:31.633 回答