Прошу вашей помощи, дорогие Ачатовцы
В общем задался задачей , сделать окно нестандартной формы а конкретно - прямоугольное с закругленными углами.
Испытание первое - на легкую решил взять
берем и рисуем картинку
и ставим её как Фон формы
(BackGroundIimage) а также в свойствах формы выставляем
TransparentColor такойже как у фона картинки (розовый в данном случае)
В результате все работает но по краям формы (где закругления) остается артефакт
можно для TransparentColor использовать цвет, как можно ближний к самой картинке и тогда артефакт фактически невиден но нарываемся на другую проблему - невозможность выполнить дизайн в одном стиле ибо артефакты будут уже посреди формы =)
Вариант два
Использовать функцию API CreateEllipticRgn() (для элипса)
но у меня с ней возникает проблема а конкретно
Код:
HRGN region = CreateEllipticRgn(0,0,100,100);
при компиляции в Visual Studio 2008 (C++) вываливаются ошибки
Код:
1>bash.obj : error LNK2028: ссылка на неразрешенную лексему (0A00000D) "extern "C" struct HRGN__ * __stdcall CreateEllipticRgn(int,int,int,int)" (?CreateEllipticRgn@@$$J216YGPAUHRGN__@@HHHH@Z) в функции "private: void __clrcall bash::Form1::Form1_Load(class System::Object ^,class System::EventArgs ^)" (?Form1_Load@Form1@bash@@$$FA$AAMXP$AAVObject@System@@P$AAVEventArgs@4@@Z)
1>bash.obj : error LNK2019: ссылка на неразрешенный внешний символ "extern "C" struct HRGN__ * __stdcall CreateEllipticRgn(int,int,int,int)" (?CreateEllipticRgn@@$$J216YGPAUHRGN__@@HHHH@Z) в функции "private: void __clrcall bash::Form1::Form1_Load(class System::Object ^,class System::EventArgs ^)" (?Form1_Load@Form1@bash@@$$FA$AAMXP$AAVObject@System@@P$AAVEventArgs@4@@Z)
1>F:\Проэкты\bash\Debug\bash.exe : fatal error LNK1120: 2 неразрешенных внешних элементов
и вот не могу въехать в чем трабла, при этом в DEVC++ и Borland C++ все нормально.
Пожалуйста вырвите мне руки из жо** и вставьте на место.