|
Вопрос # 2 540/ вопрос открыт / |
|
Доброго времени суток, уважаемые эксперты!
Как скопировать область канвы CopyRect невилимую на экране, если например канва находится в ScrollBox. У меня аозникает ситуация когда при указании необходимой области копируется часть экрана (Панель задач), а далее идет черный прямоугольник. Спасибо!
Мини-форум вопроса
Всего сообщений: 6; последнее сообщение — 19 марта 2009, 15:06; участников в обсуждении: 3.
|
Вадим К (статус: Академик), 19 марта 2009, 11:08 [#1]:
А как копируете? может действительно копируете рабочий стол?
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Казаков Николай Константинович (статус: 1-ый класс), 19 марта 2009, 11:45 [#2]:
Копирую так:
R1:=Classes.Rect(0,0,1000,1000);
R2:=Classes.Rect(10,10,21000,29700);
Form8.PrintPreview1.Canvas.CopyRect(R2, Protocols.Canva, R1);
Область R1 больше видимой, и на канве приемнике отображается часть экрана и чернота
|
|
Вадим К (статус: Академик), 19 марта 2009, 11:48 [#3]:
Я думаю, это ошибка функции CopyRect - она системная и ничего о ScrollBox не знает. И копирует, что видит.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Вадим К (статус: Академик), 19 марта 2009, 15:01 [#5]:
А как её скопировать, если она не отрисована? Нельзя скопировать то, чего нет.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Пупкин В В (статус: 2-ой класс), 19 марта 2009, 15:06 [#6]:
как вариант - временно перед копированием увеличивем размеры скролбокса до того как поместятся все элементы, затем копируем и возвращаем исходное состояние.
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|