Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.25;
Скачать: CL | DM;

Вниз

Возможно ли это…   Найти похожие ветки 

 
Man-In-Red   (2002-06-28 21:20) [0]

Возможно ли это…
--------------------------------------------------------------------------------------------------------------------------------
Возможно ли какой-нибудь компонент представить в виде изображения и поместить в Image? Я имею ввиду как можно «отснять изображение компонента » в моем случае это StringGrid, вместе с текстом, с графикой в виде картинки и поместить в Image, примерно так как это делает Alt+PrtScreen, но включая даже ту часть компонента которая не поместилась на экран?!
Буду очень благодарен!
--------------------------------------------------------------------------------------------------------------------------------


 
Viewer   (2002-06-28 21:30) [1]

Никак.
То что, за пределами окна - не существует.
Или сам рисуй на основе знаний о свойствах компонента и данных в нем размещаемых


 
Volj   (2002-06-28 21:40) [2]

Моржно :) Первое, что приходит в голову - перехватить Canvas. Он описан в TCustomControl как приватный fCanvas. Но можно высчитать смещение от Self нужного тебе StringGrid и вручную записать туда сыылку на Canvas TImage.
А дальше - дерзай! Страна не забудет своих героев! ;-)


 
Viewer   (2002-06-28 21:42) [3]

Чего только в говолю не стукнет:))


 
Volj   (2002-06-28 21:43) [4]

ЭтТочно. Хорошо, что это не мне нужно сделать :)


 
kull   (2002-06-28 23:10) [5]


> То что, за пределами окна - не существует.

Ха-ха-ха!!! Держите меня.


 
ricks   (2002-06-29 00:52) [6]

Сначала получить DC (GetWindowDC), а потом копировать (BitBlt) в какой-нибудь Bitmap.Canvas.Handle


 
Viewer   (2002-06-29 11:53) [7]

Вероятно, я не совсем точно понял вопрос.

Я решил, что абоненту нужна информация находящаяся за пределами
изображения компонента, а не окна на котором находится компонент.
Т.е. если в гриде отображено 10 строк, а реально он содержит 100,
то оставшиеся 90 строк методами копирования через DC не получить.
Если только не инициировать прокрутку на экран, последовательное копирование и конкатенацию изображений.
Это точно головная боль.
Поэтому и было утверждение - "не существует".

(29.06.02 00:52)
>Сначала получить DC (GetWindowDC), а потом копировать (BitBlt) >в какой-нибудь Bitmap.Canvas.Handle

Так, кстати, не пойдет. Этот вариант только для неклипированного
окном компонента.


 
Юрий Зотов   (2002-06-29 18:11) [8]

Ух, чего только не наговорили...
А про уже готовый метод PaintTo почему-то не вспомнили.


 
Man-In-Red   (2002-06-29 19:11) [9]

2 Юрий Зотов © (29.06.02 18:11)

А поподробней можно пожалуйста!
Заранее благодарен!


 
Man-In-Red   (2002-06-29 19:25) [10]

StringGrid1.PaintTo(image1.Canvas.Handle,0,0);
Что-то вроде этого?
Но тогда это тоже не подходит, потому что рисует только то, что видит… а то что «за экраном» остается белым…
Вопрос остается открытым…



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

Текущий архив: 2002.07.25;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.018 c
1-81264
Балков Евгений
2002-07-15 11:12
2002.07.25
Конвертирование Hex - ов


3-81134
muhin-av
2002-07-03 15:25
2002.07.25
помогите разобраться с DBCtrlGrid ???


3-81172
Вован
2002-07-04 04:49
2002.07.25
DBGrid


14-81414
VuDZ
2002-06-26 19:58
2002.07.25
Is this Pascal?


1-81224
Help
2002-07-13 20:02
2002.07.25
Как в Memo вставить текст при нажатии...