如何使编辑控件具有3D外观?

时间:2013-07-26 20:40:05

标签: c++ winapi win32gui

我通过以下代码创建了一个编辑控件:

hWnd = CreateWindowExW( 0,      // extended styles
                        L"EDIT",
                        L"Text in edit.",
                        ES_LEFT | WS_VISIBLE | WS_CHILD,
                        10,     // x
                        50,     // y
                        30,     // width
                        100,    // height
                        hWndMainWindow,
                        NULL,
                        hInstance,
                        NULL);

我的编辑控件如下所示:
My edit control

但我在Windows中看到的大多数编辑控件都有如下图所示的3D外观:
Normal edit controls

我尝试了几种扩展和普通的窗口样式,但没有做任何好事。如何让我的编辑控件看起来像第二张图像?

一些可以帮助您参考的快速链接:
Window Styles
Extended Window Styles
Edit Styles

1 个答案:

答案 0 :(得分:3)

您需要包含WS_EX_CLIENTEDGE扩展窗口样式。

你说你已经尝试过包括WS_EX_CLIENTEDGE但没有成功。我会猜测你一直试图将它包含在窗口样式而不是扩展窗口样式中。您的代码应如下所示:

hWnd = CreateWindowExW( 
    WS_EX_CLIENTEDGE,  // extended styles
    L"EDIT",
    ...
);