26
Октябрь
2009
Функция для изменения размеров картинки
Функция для изменения размеров картинки.
Добавьте на форму 2 PictureBox и 1 CommandButton.
Private Declare Function StretchBlt Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal Nwidth As Long, ByVal Nheight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal nSrcWidth As Long, ByVal nSrcHeight As Long, ByVal dwRop As Long) As Long Const SRCCOPY = &HCC0020 Private Sub ImgResize(src As PictureBox, TmpPic As PictureBox, mWidth As Long, mHeight As Long) src.AutoRedraw = False TmpPic.AutoRedraw = True TmpPic.Height = mHeight 'установка размеров невидимого picturebox TmpPic.Width = mWidth StretchBlt TmpPic.hdc, 0, 0, mWidth, mHeight, src.hdc, 0, 0, src.Width, src.Height, SRCCOPY 'сохранить временной файл на диске SavePicture TmpPic.Image, App.Path + "\tempimg.bmp" 'перезагрузить оригинальный picturebox src.AutoSize = True src.Picture = LoadPicture(App.Path + "\tempimg.bmp") 'удалить временной файл Kill App.Path + "\tempimg.bmp" 'очистить невидимый picturebox TmpPic.Picture = LoadPicture() 'пример для вызова функции 'ImgResize Picture1, Picture2, Picture1.Width / 2, Picture1.Height / 2 End Sub Private Sub Command1_Click() ImgResize Picture1, Picture2, Picture1.Width / 2, Picture1.Height / 2 End Sub Private Sub Form_Load() Picture2.Visible = False End Sub