Я пишу графический компонент, который должен принимать форму того, что на нем нарисовано.
Через АПИ я нашел три способа это сделать:
1)BeginPath, рисую фигуру ,EndPath, SetWindowRgn
Но в конце концов мне пришлось от него отказаться, потому что в нем можно было рисовать только фигуры с замкнутым контуром. А назначение компонента - и в том, чтобы делать окно хоть в форме точки.
2)SetWindowRgn - при этом проходиться по всему фону циклом, проверяя цвет каждого пикселя. Если он не соответствует фону, то CreateRectRgn его, ну и SetWindowRgn. Увы этот способ оказался слишком медленным. Аж до нескольких секунд (в зависимости от размеров фона). Пришлось от него отказаться
3)GetWindowLong, SetWindowLong, SetLayeredWindowAttributes - но это работало только для главных форм, но не для контролов.
В итоге я остался ни с чем.
Помогите, как-нибудь, советом, что ли?

Спасибо сем ответившим