Re[5]: Рисование фигур (линий) на форме в VBA для Excel.
От: BugMan  
Дата: 11.05.03 20:47
Оценка:
Здравствуйте, Tonop, Вы писали:

T>А можно поподробнее, если не затруднит.

Ну ты это..... сам понимаешь.....

Короче так:

Dim hDCDest As Long
Dim hBMPDest As Long
Dim hBMPOld As Long
Dim hDCScreen As Long
Dim pic As IPictureDisp

    'Берем DC десктопа - нужен для создания совместимых обьектов
    hDCScreen = GetWindowDC(0)
    
    ' тут создаем временный DC и конечный битмап с нужными размерами
    hDCDest = CreateCompatibleDC(hDCScreen)
    hBMPDest = CreateCompatibleBitmap(hDCScreen, nWidth, nHeight)
    hBMPOld = SelectObject(hDCDest, hBMPDest)    

    ' тут рисуешь на hDCDest всё чё надо
    .....

    ' сохраняем получившийся битмап
    hBMPDest = SelectObject(hDCDest, hBMPOld)
    
    ' чистим
    DeleteDC hDCDest
    ReleaseDC 0, hDCScreen
    
    ' описание этой функции [url=http://www.rsdn.ru/Forum/Message.aspx?mid=259283&only=1]тут[/url]
    Set pic = ConvertBmpToIPicture(hBMPDest)


Ну а дальше всё просто.....
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.