Цвет фона GroupBox

Тема в разделе "WASM.WIN32", создана пользователем RDMess, 9 янв 2011.

  1. RDMess

    RDMess Member

    Публикаций:
    0
    Регистрация:
    28 дек 2009
    Сообщения:
    51
    Здравствуйте.
    Была проблема, при с фоном цвета диалога в TabControl-е, её вроде решил, но вот появилась другая проблема с фоном надписи GroupBox.

    Поискал по форумам и вроде как нашел решение,цвет фона стал прозрачны но и появилась линия под надписью, какие я только цвета не переберал ничего не выходит, помогите пожалуйста !!!

    Код (Text):
    1. TabChildDlgProc proc hWnd:DWORD,uMsg:DWORD,wParam:DWORD,lParam:DWORD
    2.         .IF uMsg==WM_INITDIALOG
    3.            invoke SetWindowLong,hWnd,DWL_USER,lParam
    4.         .ELSEIF uMsg==WM_COMMAND
    5.        
    6.         .ELSEIF uMsg==WM_ERASEBKGND
    7.        
    8.         .ELSEIF uMsg==WM_CTLCOLORSTATIC
    9.            invoke SetBkMode,wParam,TRANSPARENT
    10.            ;invoke GetSysColorBrush,COLOR_BTNFACE
    11.            invoke GetStockObject,NULL_BRUSH
    12.            ret
    13.         .ELSE
    14.            XOR EAX,EAX
    15.            ret
    16.         .ENDIF    
    17.         XOR EAX,EAX
    18.         INC EAX
    19.       ret
    20.     TabChildDlgProc endp
    [​IMG]
     
  2. RDMess

    RDMess Member

    Публикаций:
    0
    Регистрация:
    28 дек 2009
    Сообщения:
    51
    Неужели решения этой проблемы нет ?
     
  3. Jura

    Jura New Member

    Публикаций:
    0
    Регистрация:
    12 июл 2009
    Сообщения:
    10
    Можно создать кисть с цветом фона и перед ret (после invoke GetStockObject,NULL_BRUSH) написать mov eax, hBrush (Handle кисти)
     
  4. RDMess

    RDMess Member

    Публикаций:
    0
    Регистрация:
    28 дек 2009
    Сообщения:
    51
    Тоже думал об этом, но для того чтобы создать кисть с цветом фона нужно для начала определить цвет, а этот цвет фона у таб контрола в WinXP какойто градиентный, сверху светлее а снизу потемнее, или у моего монитора проблемы с цветом?

    [​IMG]

    Вообще можно было бы решить проблему вызвав функцию для созданного дочернего окна EnableThemeDialogTexture,hChildWnd,6h

    Но опять же цвета принципиально отличаются.

    [​IMG]

    И что делать, хз.