Вниз
Скачать: 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.004 c
14-11700
Думкин
2003-11-13 04:53
2003.12.04
С днем рождения! 13 ноября.


11-11601
chum
2003-03-21 16:55
2003.12.04
Как проверить конец файла в TStream


6-11669
UltraFreak
2003-10-07 14:58
2003.12.04
Куда коннектиться?


1-11602
greenrul
2003-11-26 03:31
2003.12.04
Проблемы с File of TMyType


8-11630
Саша2
2003-08-01 15:59
2003.12.04
avertv studio 203 -> delphi




   Наверх