Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2002.07.25;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.005 c
3-81187
Nebula
2002-07-04 14:53
2002.07.25
IB


6-81394
chernoruk
2002-05-13 07:53
2002.07.25
Последний раз про IP и GetHostByName


1-81277
tovSuhov
2002-07-15 13:44
2002.07.25
Вертикальный разделитель PopupMenu...


14-81484
Man-In-Red
2002-06-28 21:20
2002.07.25
Возможно ли это…


7-81501
ses1
2002-05-03 01:49
2002.07.25
Как определить тип монитора? Объем памяти видеоадаптера?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский