Вывод графических файлов на компонент Image - VB (170294)

Узнай цену своей работы

Формулировка задачи:

задание: Вывод графических файлов на компонент Image. Файлы выбираются из списка. Список файлов формируется в диалоге открытия файлов (компонент CommonDialog). Картинка масштабируется по размеру компонента Image, который занимает всю форму и изменяет размеры при изменении размеров формы. Смена файлов происходит при щелчке по изображению в зависимости от выбора кнопки на панели инструментов (следующий, предыдущий). Составить в MS Word блок-схему алгоритма выбора файла из списка на форме есть объекты :Image, ListBox, CommonDialog и ToolBar в тулбаре 3 кнопки index:1, Key: o, style: 0-tbrDefault index:2, Key: fw, style: 2-tbrButtonGroup, Value: 1-tbrPressed index:3, Key: bk, style: 2-tbrButtonGroup, Value: 0-tbrUnPressed Сделал код:
нет только момента с тем, что изображения должны меняться при клике на Image программа по ссылке делает всё что мне надоВывод графических файлов на компонент Image только этот код для пустой формы. в нём все объекты образуются динамически, а мне нужно с использованием объектов формы вопрос:

Решение задачи: «Вывод графических файлов на компонент Image»

textual
Листинг программы
Option Explicit
Dim a As Single
 
Private Sub Form_Load()
Image1.Stretch = True
End Sub
 
Private Sub Image1_Click()
    If List1.ListCount Then
        If Tbr.object.Buttons(1).Value Then  '[U][B]как записать эту строчку, чтобы она подходила к моему коду?[/B][/U]
            If List1.ListIndex Then List1.ListIndex = List1.ListIndex - 1
        Else
            If List1.ListIndex < List1.ListCount - 1 Then List1.ListIndex = List1.ListIndex + 1
        End If
    End If
End Sub
 
Private Sub List1_Click()
Set Image1.Picture = LoadPicture(List1.List(List1.ListIndex))
 a = Image1.Picture.Width / Image1.Picture.Height
 Call Form_Resize
End Sub
 
Private Sub Form_Resize()
    Dim w As Long, h As Long
    If Me.ScaleWidth < 1000 Or (Me.ScaleHeight - Tbr.Height) < 1000 Then Exit Sub
    List1.Move Me.ScaleWidth - Me.ScaleWidth / 4, Tbr.Height, Me.ScaleWidth / 4, Me.ScaleHeight - Tbr.Height
    If Not Image1.Picture Is Nothing Then
        If a > 1 Then w = Me.ScaleWidth - List1.Width: h = w / a Else h = Me.ScaleHeight - Tbr.Height: w = h * a
        Image1.Move (Me.ScaleWidth - List1.Width - w) \ 2, (Me.ScaleHeight - Tbr.Height - h) \ 2 + Tbr.Height, w, h
    End If
End Sub
 
 
Private Sub Tbr_ButtonClick(ByVal Button As MSComctlLib.Button)
        If Button.Key = "o" Then
            Call CommonDialog1.ShowOpen
            List1.AddItem CommonDialog1.object.FileName
        End If
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.714 из 5
Похожие ответы