Доброго времени суток.
Известно, что в WinCE все окна создаются с такими стилями.
Опишу проблему на конкретном примере.
Допустим, у меня есть картинка (простой CWnd) с прозрачностью. Т.е. есть "прозрачные места". Извините за какой-то чудовищный слог. Хотелось бы, чтобы "за картинкой" (т.е более точно, в тех местах, где она прозрачна) отображлось то, что было отрисовано ранее (контролы, фон диалога и т.п.). Однако, например, если картинка — ребенок диалога, то он убирает ее прямоугольник из области отсечения (из-за стиля WS_CLIPCHILDREN) и его фон в этих местах не отрисуется. Поэтому в тех местах, где картинка прозрачна останется "старый бэкграунд" вплоть до рабочего стола.
В этом простейшем случае, еще можно как-то воздейстовать на ситуацию, на CTLCOLOR получая весь контекст при помощи GetDCEx и заливая чем нужно. Однаку если картинка находиться уже над контролом — дело плохо. Если пытаться брать весь конекст в отрисовке (WM_PAINT) контрола, то возникает "моргание", которое, конечно же недопустимо.
Вариант с "хайдить окно при отрисовке, ждать обновления, получать картинку бэкгранда, а затем отрисвываться самим" — не предлагать

(а то видел тут аналогичный пост).
Ах, да... может можно просто убрать эти стили (и как — SetWindowLong отрабатывает но эффекта не производит)? Не вызовет это-ли злополоучное мигание?
Очень жду ваших комментариев.
Здравствуйте, kero, Вы писали:
>>в тех местах, где картинка прозрачна останется "старый бэкграунд" вплоть до рабочего стола
K>+ WS_EX_TRANSPARENT ?
>>SetWindowLong отрабатывает но эффекта не производит
K>+ SetWindowPos ?
Все очень здорово, но в WinCE стиль WS_EX_TRANSPARENT неть....

И это бы не помогло, наверное. Да — для данного уровня бы начало работать, но только для отдельного взятого окна — а их там предполагается — туча (имело в виду одного уровня). Ну да это бессмысленно я все пишу — этого стиля не существует просто.
Уф... что-то я заговариваться начал... (ужасные вещи пишу). Это все оттого, что спать охота..

Отвечу кратоко — стиля этого нет.
По поводу SetWindowPos — это я не понял — что и куда позиционрировать??? И в какой момент??????
В отрисовке чайлда? диалога??? кого и куда?

Ничего не понял
Здравствуйте, HDDC, Вы писали:
HDD>Уф... что-то я заговариваться начал... (ужасные вещи пишу). Это все оттого, что спать охота..
HDD>Отвечу кратоко — стиля этого нет.
HDD>По поводу SetWindowPos — это я не понял — что и куда позиционрировать??? И в какой момент??????
HDD>В отрисовке чайлда? диалога??? кого и куда?
Ничего не понял
После довольно длительного молчания.
Все же скажу, что хорошего решения, видимо, не найти.
Да и не особо оно и нужно, если вдуматься.