Вниз
Скачать: CL | DM;

Как я могу нарисовать рамку выделения   Найти похожие ветки 

 
mOOx_ ©   (2003-10-06 19:16) [0]

Добрый день, Мастера.
У меня вот какой к вам вопрос. Понадобилось мне растягивать форму, которая имеет стиль bsNone. Стандартно она не растягивается и я растягиваю ее насильно. Но при этом все МОРГает. Неприятно как-то. Вот я и решил растягивать не форму сразу, а сначала рамочку эту растянуть(я про рамку, которая в виндах при зажатой кнопке мыши появляется). Вот и думаю, что за API такая? Может поможете чем. Спасибо скажу :)


 
clickmaker ©   (2003-10-06 19:30) [1]

dc := GetDC(0);
SetROP2(dc, R2_XORPEN); // искл. ИЛИ
// первый раз рисуешь - рамочка появляется, второй
// раз рисуешь на том же месте - исчезает
// Перемещаешь мышь, рисуешь опять и так далее
Rectangle(dc, x1, y1, x2, y2);


 
mOOx_ ©   (2003-10-06 19:33) [2]

Так GetDC(0)-этож, на сколько я знаю, раб. стол. А если надо на другом, допустим, компоненте? Тогда Handle того самого компонента?


 
clickmaker ©   (2003-10-06 19:37) [3]

Ну тебе ж рамку надо поверх всего рисовать. А это и есть GetDC(0), не рабочий стол даже, а весь экран


 
clickmaker ©   (2003-10-06 19:39) [4]

Кстати есть еще DrawFocusRect, она пунктирную рамочку уже с XOR рисует


 
mOOx_ ©   (2003-10-07 16:59) [5]

Спасибо за разъяснения. Я по другому думал :)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.005 c
4-11734
LOX
2003-10-07 18:20
2003.12.04
Как опредилить хендел активного окна?


9-11577
Vin_Ghost
2003-05-20 23:18
2003.12.04
алгоритм поиска пути


4-11727
PSA
2003-10-08 15:14
2003.12.04
Интересно а HOOKs and ActiveX работать будут?


6-11654
ilka
2003-10-01 15:01
2003.12.04
TIdHttpServer TIdHttp TIdTCPClient TIdTCPServer


4-11750
lamorg
2003-10-10 17:31
2003.12.04
Как установить ani-курсор




   Наверх