开发者

How to create win7 style button using CreateWindowEx [duplicate]

This question already has answers here: Closed 11 years ago.

Possible Duplicate:

winapi CreateWindowEx -> create button with user system styles?

Hi, I am kinda new to WinAPI and C++ and I am using Visual Studio 2010. I want to create some buttons in the main window. So there are two questions:

1) can I use a dialog window created with resource editor as a main window so that I wouldnt have to create all controls "by hand" in the "post-WM_CREATE message" section?

2) (If I cant use resource script made window with 开发者_如何学运维buttons as a main window) When I "hand make" button using CreateWindowEx like this:

case WM_CREATE:

    {
    HFONT buttonFont = CreateFont(-11, 0, 0, 0, 400, FALSE, FALSE, FALSE, 1, 400, 0, 0, 0, fontButtonFont);
    HWND bMainOK = CreateWindowEx(
        0, 
        WC_BUTTON, 
        szOkButton, 
        WS_VISIBLE | WS_CHILD | WS_TABSTOP | BS_PUSHBUTTON, 
        24, 200, 75, 23, 
        hWnd, 
        0, 
        hInst, 
        0);
    SendMessage(bMainOK, WM_SETFONT, (WPARAM)buttonFont, FALSE);
    }

I get very ugly oldstyle button. How do I make it look like Win7/Vista button? Or better how do I make it behave as system style setting says (when using XP get XP style button, when using Vista get Vista style button etc.)?

Thanks


You need to link a manifest to your app that specifies v6 common controls. Websearch will do the rest for you.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜