• Авторизация


Visual Basic 6.0. Алгоритм масштабирования размеров изображения в контроле Image 10-05-2015 19:32 к комментариям - к полной версии - понравилось!


Алгоритм проверок условий и пропорционального изменения размеров контрола Image

[700x447]

[700x360]

[700x335]

[616x410]

Процедура в коде формы:

Private Sub Form_Resize()

Dim ImgW As Integer, ImgH As Integer

'Ограничение на уменьшение всех контролов до нуля твипов при уменьшении формы, для предотвращения ошибки программы

If Form1.Height > 1 And Form1.Width > 1 Then

'Вычисление размеров изображения (ширины и высоты) под размер изменённого окна

If Picture1.Picture.Width <= Form1.Width And Picture1.Picture.Height <= Form1.Height Then

    ImgW = Picture1.Picture.Width

    ImgH = Picture1.Picture.Height

End If

If Picture1.Picture.Width > Form1.Width And Picture1.Picture.Height > Form1.Height Then

    ImgW = Form1.Width

    ImgH = Picture1.Picture.Height / (Picture1.Picture.Width / Form1.Width)

    If ImgH > Form1.Height Then

        ImgH = Form1.Height

        ImgW = Picture1.Picture.Width / (Picture1.Picture.Height / Form1.Height)

    End If

End If

If Picture1.Picture.Width > Form1.Width And Picture1.Picture.Height <= Form1.Height Then

    ImgW = Form1.Width

    ImgH = Picture1.Picture.Height / (Picture1.Picture.Width / Form1.Width)

    If ImgH > Form1.Height Then

        ImgH = Form1.Height

        ImgW = Picture1.Picture.Width / (Picture1.Picture.Height / Form1.Height)

    End If

End If

If Picture1.Picture.Height > Form1.Height - 2900 Then

    ImgH = Form1.Height - 2900

    ImgW = Picture1.Picture.Width / (Picture1.Picture.Height / (Form1.Height - 2900))

End If

'Изменение размеров изображения (ширины и высоты) под размер изменённого окна

    Image1.Width = ImgW

    Image1.Height = ImgH

End If

вверх^ к полной версии понравилось! в evernote
Комментарии (1):
20-04-2019-15:55 удалить
В VB6 не работает. Гавкает на "Picture1.Picture.Width": Object doesn't support this property or method.


Комментарии (1): вверх^

Вы сейчас не можете прокомментировать это сообщение.

Дневник Visual Basic 6.0. Алгоритм масштабирования размеров изображения в контроле Image | mozgotron - Дневник mozgotron | Лента друзей mozgotron / Полная версия Добавить в друзья Страницы: раньше»