Вывод графических файлов на компонент 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
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д