|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.09.2008, 18:20 | #1 |
Пользователь
Регистрация: 10.07.2008
Сообщений: 39
|
Закругление краёв компонента
Есть процедура :
procedure MakeRounded(Control: TWinControl); var R: TRect; Rgn: HRGN; begin with Control do begin R := ClientRect; rgn := CreateRoundRectRgn(R.Left, R.Top, R.Right, R.Bottom, 20, 20); Perform(EM_GETRECT, 0, lParam(@r)); InflateRect(r, - 5, - 5); Perform(EM_SETRECTNP, 0, lParam(@r)); SetWindowRgn(Handle, rgn, True); Invalidate; end; end; Она закругляет края компонентов,но по краям они приобретает некоректный вид,можно ли сделать нормально ? И можно ли это сделать без применение имейджей на событиях OnMouseDown и OnMouseUp ? |
18.09.2008, 18:27 | #2 |
Старожил
Регистрация: 13.10.2007
Сообщений: 2,740
|
Если нужно просто чкруглить края компонентов, то можно положить на форму компонент XPManifest с вкладки Win32.
|
18.09.2008, 18:34 | #3 |
Пользователь
Регистрация: 10.07.2008
Сообщений: 39
|
Пасиб Puporev !
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Имя компонента... | prizrak1390 | Общие вопросы Delphi | 11 | 17.04.2008 14:47 |
Прозрачность компонента | JoanM | Общие вопросы Delphi | 14 | 16.02.2008 15:40 |
Нужны два компонента | delphin100 | Компоненты Delphi | 2 | 13.01.2008 01:54 |
Регистрация компонента | Zonder | Компоненты Delphi | 0 | 06.12.2006 18:17 |