Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

а как узнать path окошка?


Альберт ©   (2007-01-18 23:19:00) 

окна с лесенкой такие некрасивые( вот я и хочу сделать сглаживание неровностей.. и хотел бы начать с определения точек окна по периметру.

подскажите пожалуйста, а как это сделать?


default   (2007-01-19 08:48:00) [1]

ты сам можешь задавать регионы окнам которые нужно потом сглаживать?
ну да в принципе

что-то я вчера это без внимания оставил
попробуй тогда о них инфу сохранять


Альберт   (2007-01-19 02:37:00) [2]

пытаюсь сделать скриншот формы и не фига .. глупая ошибка..
dc:=getdc(0);
getwindowrect(w,rect);
BitBlt(dc, 0, 0, 200, 200, DC, rect.Left + 100, rect.Top, SRCCOPY );


default   (2007-01-19 01:52:00) [3]

Альберт ©   (19.01.07 01:40) [12]
так-то оно так
только вот как пробегаться будешь
посмотри алгоритмы машинной графики
думаю, что-то подобное должно быть
можно и самому, сложность зависит как и с каким качество сглаживать


Альберт   (2007-01-19 01:40:00) [4]

в общем цель сглаживание лесенки. круглые, некруглые, не думаю, что значение имеет..

я думаю так, можно скопировать с экрана изображение формы, зная rgn, инвертируем его, перекрасим в другой цвет. таким образом думаю пробежаться по периметру.


Альберт   (2007-01-19 01:35:00) [5]

ну да в принципе


default   (2007-01-19 01:25:00) [6]

Альберт ©   (19.01.07 01:20) [8]
тогда дело хуже
"возможен выход из проблемы, если я сам задам регион окну. "
ты сам можешь задавать регионы окнам которые нужно потом сглаживать?


default   (2007-01-19 01:21:00) [7]

Альберт ©   (19.01.07 01:18) [7]
я про их форму
"окна с лесенкой такие некрасивые"
вот это расшифруй
вообщем, какой формы границы окон собираешься сглаживать
ну границы могут быть прямоугольные(обычно такие), круглые, эллипсом, и всякие другие
какие у тебя


Альберт   (2007-01-19 01:20:00) [8]

а лесенка абстрактна, без прямого угла
возможен выход из проблемы, если я сам задам регион окну. это может чем-то помочь?


Альберт   (2007-01-19 01:18:00) [9]

окно чужого приложения, не диалоговое, обычное


default   (2007-01-19 01:13:00) [10]

Альберт ©   (19.01.07 01:11) [5]
опиши с окнами какой формы имеешь дело
если лесенка границы окна может идти не только под прямым углом, тогда всё заметно усложняется


Альберт   (2007-01-19 01:11:00) [11]

типа взять getdc окна и пробежать по периметру?


default   (2007-01-19 00:59:00) [12]

что-то я слабо представляю, как ты собираешься по аппроксимирующим прямоугольникам искать "лесничатый путь" очерчивающий контур формы
а вот с пиксельным пробегом будет очень просто, если граница окна идёт лесенкой и строго под прямыми углами


Альберт   (2007-01-19 00:53:00) [13]

а потом я так понимаю GetRegionData


Джо   (2007-01-18 23:48:00) [14]

Регионы, внутренне, это совокупность прямоугольников, вписанных в данную фигуру.


default   (2007-01-18 23:33:00) [15]

GetWindowRgn
штука в том, что разным путям может соответствовать один и тот же регион
а окну однозначно соответствует регион, а не путь

ну, а как это применить для изменения региона по существуюшему...
сходу не скажу
возможно, анализировать регион как картинку


Наверх

Титульная страница Поиск, карта сайта Написать письмо