C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Графика
Vasya
  Отправлено: 10.06.2003, 09:31


Не зарегистрирован







Кто может сказать, как скопировать произвольную прямоугольную область экрана (не формы, в этот кусочек может входить и одна форма и две...) и затем вставить этот прямоугольник в другую прямоугольную область экрана.
Asher
Отправлено: 10.06.2003, 10:33


Мастер участка

Группа: Модератор
Сообщений: 550



По моему, это было на старом форуме (вроде оттуда брал)
Можно связать Handle Canvas'а с рабочим столом:
CODE

HWND Wnd=GetDesktopWindow();
HDC DC=GetWindowDC(Wnd);
TCanvas *Cnv=new TCanvas;
Cnv->Handle=DC;

и далее работать как с обычной Canvas (CopyRect, etc)

Не забудь в конце сделать:
CODE

ReleaseDC(Wnd, DC);
delete Cnv;


P.S. Размеры экрана — это Screen->Width; и Screen->Height;

Отредактировано Asher — 10 Jun 2003, 10:41
pasha
Отправлено: 11.06.2003, 17:07


Дежурный стрелочник

Группа: Участник
Сообщений: 62



Пример такой здесь.

Такой пример есть, там можно:
1 Скопировать весь рабочий стол
2 Скопировать активное окно программы
3 Выделить мышкой и скопировать выделенную часть рабочего стола

Вернуться в Вопросы программирования в C++Builder