Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 |

 

  Вопрос: Form to BMP Добавлено: 17.07.04 02:22  

Автор вопроса:  Ratu.R
Как сделать так чтоб все содержимое формы (в данном случае график на MSChart) записались в BMP или JPG файл

Ответить

  Ответы Всего ответов: 22  

Номер ответа: 1
Автор ответа:
 @CyRax PTR



ICQ: 204447456 

Вопросов: 28
Ответов: 664
 Web-сайт: basicproduction.nm.ru/
 Профиль | | #1
Добавлено: 17.07.04 02:38
Может BitBlt?

Ответить

Номер ответа: 2
Автор ответа:
 Ratu.R



Вопросов: 8
Ответов: 19
 Профиль | | #2 Добавлено: 17.07.04 02:53
Че? Мот , если можно, напишешь по понятней, а то я не понял.

Ответить

Номер ответа: 3
Автор ответа:
 Ratu.R



Вопросов: 8
Ответов: 19
 Профиль | | #3 Добавлено: 17.07.04 03:24
НУ если никто не знает как в БМП ил Джипег, тады мот кто подскажет как закнать содержимое формы в вордовский файл .DOC

Ответить

Номер ответа: 4
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #4
Добавлено: 17.07.04 10:05
Именно все содержимое формы, только если она видна будет на экране, можно через BitBlt, т.е. фоткнуть экран и зная прямоугольник окошка, вырезать картинку оттуда... сохранение, через SavePicture в bmp формат не представляет никаких трудностей.

Ответить

Номер ответа: 5
Автор ответа:
 Ratu.R



Вопросов: 8
Ответов: 19
 Профиль | | #5 Добавлено: 17.07.04 14:02
Люди, мот кто напишет исходники. Если не трудно,просто очень надо

Ответить

Номер ответа: 6
Автор ответа:
 Barsik



Разработчик Offline Client

ICQ: 343368641 

Вопросов: 17
Ответов: 686
 Web-сайт: barsik.newmail.ru
 Профиль | | #6
Добавлено: 17.07.04 15:29
Учите API товарищи!!!

Функция BitBlt
Declare Function BitBlt Lib "gdi32.dll" (ByVal hdcDest As Long, ByVal nXDest As Long, ByVal nYDest As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hdcSrc As Long, ByVal nXSrc As Long, ByVal nYSrc As Long, ByVal dwRop As Long) As Long

Платформа

Windows 95/98: Поддерживается.
Windows NT: Требуется Windows NT 3.1 или выше.
Windows 2000: Поддерживается.
Windows CE: Требуется Windows CE 1.0 или выше.

BitBlt используется для выполнения операции копирования отдельных битов из области источника изображения в область-получатель.Функция позволяет передавать прямоугольную область из контекста устройства в контекст другого устройства. Размеры переданного прямоугольника совершенно сохраняются.

Возвращаемое значение
В случае ошибки функция возвращает 0 (Windows NT, 2000: используйте GetLastError для получения кода ошибки). В успешном случае функция возвращает значение отличное от нуля.
Параметры


hdcDest
Дескриптор контекста устройства устройства, которое получает переданный блок изображения.
nXDest
Координата x точки верхнего левого угла блока изображения(получатель).
nYDest
Координата y точки верхнего левого угла блока изображения(получатель).
nWidth
Ширина в пикселах блока изображения.
nHeight
Высота в пикселах блока изображения.
hdcSrc
Дескриптор к контексту устройства устройства, которое содержит блок изображения для копирования.
nXSrc
Координата x точки верхнего левого угла блока изображения(источник).
nYSrc
Координата y точки верхнего левого угла блока изображения(источник).
dwRop
Один из следующих флажков, идентифицирующих растровую операцию для передачи блока изображения. Каждая растровая операция использует RGB-значение цвета исходного исходного пиксела, чтобы определить новый цвет пиксела.
BLACKNESS
Заполняет область-получатель черным цветом.
CAPTUREBLT
Windows 98, 2000: Include any windows layered on top of the window being used in the resulting image.
DSTINVERT
Инвертирует область-получатель.
MERGECOPY
Изображение определяется результатом выполнения операции побитового AND над копируемым изображением или шаблоном.
MERGEPAINT
Изображение определяется результатом выполнения операции побитового OR над инвертируемым копируемым и областью-получателем.
NOMIRRORBITMAP
Windows 98, 2000: Предотвращает точечный рисунок от зеркального отражения.
NOTSRCCOPY
Изображение определяется инвертируемым исходным изображением.
NOTSRCERASE
Комбинирование цвета и прямоугольников источника и получателя, использующих поразрядный оператор OR с последующим инвертированием результирующего цвета.
PATCOPY
Шаблон копируется в область получатель.
PATINVERT
Комбинирование цвета указанного шаблона с цветами прямоугольника адресата, используя поразрядный оператор XOR.
PATPAINT
Комбинирование цвета указанного образца с цветами перевернутого исходного прямоугольника, используя поразрядный оператор OR. Комбинируйте результат той операции с цветами прямоугольника адресата, используя поразрядный оператор OR.
SRCAND
Комбинирование цвета и прямоугольников источника иадресата, использующих поразрядный оператор AND.
SRCCOPY
Копирование исходного прямоугольника непосредственно в прямоугольник адресата без изменений.
SRCERASE
Комбинирование перевернутых цветов прямоугольника адресата с цветами источника , используя поразрядный оператор AND.
SRCINVERT
Комбинирование цвета и прямоугольников источника и адресата, использующих поразрядный оператор XOR.
SRCPAINT
Комбинирование цвета и прямоугольников источника и адресата, использующих поразрядный оператор OR.
WHITENESS
Заполняет область-получатель белым цветом.

Константы

Const BLACKNESS = &H42
' Const CAPTUREBLT = ???
Const DSTINVERT = &H550009
Const MERGECOPY = &HC000CA
Const MERGEPAINT = &HBB0226
' Const NOMIRRORBITMAP = ???
Const NOTSRCCOPY = &H330008
Const NOTSRCERASE = &H1100A6
Const PATCOPY = &HF00021
Const PATINVERT = &H5A0049
Const PATPAINT = &HFB0A09
Const SRCAND = &H8800C6
Const SRCCOPY = &HCC0020
Const SRCERASE = &H440328
Const SRCINVERT = &H660046
Const SRCPAINT = &HEE0086
Const WHITENESS = &HFF0062

Пример

' Копируем изображение прямоугольника из формы Form1 в форму Form2
' используя SRCCOPY. Прямоугольник имеет ширину 100 и высоту
' 50. Верхний левый угол источника- (350, 250); копия расположится в координатах
' (0,0) формы Form2.
Dim retval As Long ' возвращаемое значение

' Переместим изображение точно как описано выше.
retval = BitBlt(Form2.hDC, 0, 0, 100, 50, Form1.hDC, 350, 250, SRCCOPY)

Ответить

Номер ответа: 7
Автор ответа:
 AASoft



Вопросов: 86
Ответов: 920
 Профиль | | #7 Добавлено: 17.07.04 20:09
Samyj prostoj sposob:PrintScreen tvoej formy. potom beresh` u oblast` v kotoroj tvoj Chart, i pihaem v fajl. problem byt` ne dolzhno;)

Ответить

Номер ответа: 8
Автор ответа:
 Ratu.R



Вопросов: 8
Ответов: 19
 Профиль | | #8 Добавлено: 17.07.04 20:19
Я наверно совсем отупел и ни чего не понял, да и времени нет разбираться. Если не сложно мот еще раз напишите исходники для такого. В 3-ей ворме находится два MSChart'a, форма во весь экран и надо енто скопировать в файл C:\123.bmp, а лучше C:\123.jpg

Ответить

Номер ответа: 9
Автор ответа:
 Ratu.R



Вопросов: 8
Ответов: 19
 Профиль | | #9 Добавлено: 17.07.04 21:23
Barsik
Чета у меня не работает,а пишет
Compile error:
Constants, fixed-length strings, arrays, user-defined and declare statements not allowed as public members of object modules

Ответить

Номер ответа: 10
Автор ответа:
 @CyRax PTR



ICQ: 204447456 

Вопросов: 28
Ответов: 664
 Web-сайт: basicproduction.nm.ru/
 Профиль | | #10
Добавлено: 17.07.04 22:26
 Посмотри какую строчку выделяет VB при ошибке.
И глянь как объявлена переменная.
 Если DIM или PUBLIC, то попробуй изменить на PRIVATE.

Ответить

Номер ответа: 11
Автор ответа:
 Ratu.R



Вопросов: 8
Ответов: 19
 Профиль | | #11 Добавлено: 17.07.04 23:20
@CyRax PTR
Выделяет строку
Declare Function BitBlt Lib "gdi32.dll" (ByVal hdcDest As Long, ByVal nXDest As Long, ByVal nYDest As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hdcSrc As Long, ByVal nXSrc As Long, ByVal nYSrc As Long, ByVal dwRop As Long) As Long

Ответить

Номер ответа: 12
Автор ответа:
 @CyRax PTR



ICQ: 204447456 

Вопросов: 28
Ответов: 664
 Web-сайт: basicproduction.nm.ru/
 Профиль | | #12
Добавлено: 17.07.04 23:23
PRIVATE Declare Function BitBlt ...

Ответить

Номер ответа: 13
Автор ответа:
 Ratu.R



Вопросов: 8
Ответов: 19
 Профиль | | #13 Добавлено: 17.07.04 23:24
ЛЮДИ!!!!! ТАк кто-нить может мне написать код для такого случая, когда В 3-ей ворме находится два MSChart'a, форма во весь экран и надо енто скопировать в файл C:\123.bmp, а лучше C:\123.jpg

Ответить

Номер ответа: 14
Автор ответа:
 @CyRax PTR



ICQ: 204447456 

Вопросов: 28
Ответов: 664
 Web-сайт: basicproduction.nm.ru/
 Профиль | | #14
Добавлено: 17.07.04 23:28
 За деньги могу. А сам то что? Неохота?

Ответить

Номер ответа: 15
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #15
Добавлено: 17.07.04 23:50
За деньги тут хоть тебе в очередь выстроятся :))
А вообще, экспериментируй, подумаешь ошибка выскочила, поменяй что-нибудь и посмотри что получится...

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам