фон static

Тема в разделе "WASM.BEGINNERS", создана пользователем zxcc, 16 янв 2009.

  1. zxcc

    zxcc New Member

    Публикаций:
    0
    Регистрация:
    21 окт 2006
    Сообщения:
    172
    Здравствуйте.Есть основное окно залитое фоном(картинка). На окне есть static.Подскажите как в static сделать фон основного окна?Или чтобы static был прозрачным.Спасибо.
     
  2. Gnil

    Gnil New Member

    Публикаций:
    0
    Регистрация:
    8 авг 2008
    Сообщения:
    41
    WM_CTLCOLORSTATIC

    В обработчике SetBkMode(hDC, TRANSPARENT);

    Можно также сделать свой static, это довольно простой контрол.
     
  3. zxcc

    zxcc New Member

    Публикаций:
    0
    Регистрация:
    21 окт 2006
    Сообщения:
    172
    Если меняю степень прозрачности:
    invoke GetWindowLong,hWnd,GWL_EXSTYLE
    or eax,WS_EX_LAYERED or WS_EX_TOOLWINDOW
    invoke SetWindowLong,hWnd,GWL_EXSTYLE,eax
    invoke SetLayeredWindowAttributes,hWnd,00FFFFFFh,ebx,LMA_ALPHA or LMA_COLORKEY
    То static становится прозрачным полностью,т.е. на его месте нет фона основного окна.
     
  4. kero

    kero Модератор SOURCES & 2LZ Команда форума

    Публикаций:
    0
    Регистрация:
    4 апр 2006
    Сообщения:
    1.074
    Адрес:
    Москва
    zxcc
    Зело сумбурно излагаете, не уверен, что понял. Но взгляните сюда: http://www.wasm.ru/forum/viewtopic.php?id=25038

    Gnil
    Ну, раз "довольно простой", - не покажете свой эквивалент?
     
  5. Gnil

    Gnil New Member

    Публикаций:
    0
    Регистрация:
    8 авг 2008
    Сообщения:
    41
    kero
    Свой - в том числе сабклассированный. Если ограничиться функциональностью текстового label-а, то и совсем свой можно сделать.

    google "transparent CStatic" - можно найти много MFC реализаций, в т.ч. owner-drawn.
     
  6. kero

    kero Модератор SOURCES & 2LZ Команда форума

    Публикаций:
    0
    Регистрация:
    4 апр 2006
    Сообщения:
    1.074
    Адрес:
    Москва
    Gnil
    Идет, ограничьтесь и делайте совсем свой :)
     
  7. Y_Mur

    Y_Mur Active Member

    Публикаций:
    0
    Регистрация:
    6 сен 2006
    Сообщения:
    2.494
    убери у основного окна стиль WS_CLIPCHILDREN
     
  8. zxcc

    zxcc New Member

    Публикаций:
    0
    Регистрация:
    21 окт 2006
    Сообщения:
    172
    Убрал всё равно не помогает на месте static "дырка".