【问题标题】:How to make the color of the parent and child window same?如何使父窗口和子窗口的颜色相同?
【发布时间】:2015-05-01 00:27:52
【问题描述】:

我对 windows.h 库几乎一无所知,但我必须使用它制作一个应用程序(长话短说)。无论如何,如果您能在这件事上对我有耐心,我将不胜感激。我的子窗口只包含一些要在父窗口上显示的静态文本,但是颜色不同如何使它们相同?我试过谷歌搜索,但我似乎没有掌握任何东西。哦,我正在使用 C++。

我在 MSDN 上看到了这个

HRESULT EnableThemeDialogTexture( _In_ HWND hwnd, _In_ DWORD dwFlags );

但不确定在哪里使用它。

我的子窗口句柄是启动。

HRESULT EnableThemeDialogTexture(start,ETDT_DISABLE);

我试过了,但我得到了诸如

之类的错误

[错误] 'ETDT_DISABLE' 未在此范围内声明

[错误] 表达式列表在初始化程序 [-fpermissive] 中被视为复合表达式

我的背景是

    wc.hbrBackground = (HBRUSH)(COLOR_GRADIENTINACTIVECAPTION+1);

我的子窗口

switch(Message) 
{
    case WM_CREATE: 
    start = CreateWindow("STATIC","some text here",
    WS_VISIBLE|WS_CHILD,200,100,300,100,hwnd,NULL,NULL,NULL);       
    break;
    case WM_DESTROY: {
        PostQuitMessage(0);
        break;
    }

我的父窗口

hwnd = CreateWindowEx(WS_EX_CLIENTEDGE,"WindowClass","                                                                                        SHOPAHOLIC",
    WS_VISIBLE|WS_SYSMENU| WS_MINIMIZEBOX,
    CW_USEDEFAULT, /* x */
    CW_USEDEFAULT, /* y */
    740, /* width */
    580, /* height */
    NULL,NULL,hInstance,NULL);

【问题讨论】:

  • 显示一些代码并更明确,很难理解你想要什么。
  • @MichaelWalz 你能再看看吗。非常感谢!

标签: c++ winapi


【解决方案1】:

处理WM_CTLCOLORSTATIC 消息。 (在该页面的末尾有一个示例可以完全按照您的要求进行操作。)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-23
    相关资源
    最近更新 更多