Установите систему программирования Visual Basic c сайта http://www.microsoft.com или с содержащего свободно распространяемые дистрибутивы системы объектно-ориентированного программирования CD-ROM.
Подготовьте несколько коллекций рисунков.
Проект “Электронный альбом” (Приложение 1)
Все объекты, необходимые для создания приложения, внесем в таблицу и запишем информацию об используемых свойствах.
Объект |
Свойство |
Значение по умолчанию |
Новое значение |
Form1 | Caption | Form1 | Электронный альбом |
Image (Рисунок) | Picture | (None) … | C:\Windows\Облака.bmp |
Stretch (Растяжка) | False | True (Да) | |
BorderStyle (Тип рамки) | 0 | 1-Fixed Single (Тонкая фиксированная) |
|
Щелкните на панели
компонентов правой кнопкой мыши – откроется
контекстное меню. Выберите в нем пункт Components (Компоненты). Установите в списке флажок возле пункта Microsoft Common Dialog Control 6.0 (Стандартное диалоговое окно) OK Созданный объект CommonDialog1 не должен быть видимым. Он нужен только для настройки свойств невидимого объекта. |
Dialog Title | Выбор изображения | |
FileName | C:\Windows\Облака.bmp | ||
Filter (Фильтр) | Растровое изображение (*.bmp) | ||
DefaultExt (Стандартное расширение) | .bmp | ||
Flags (Флажки) | 4100 |
Перенесем данные элементы на форму и изменим значение свойств согласно таблице.
Листинг программы:
Private Sub Image1_Click()
CommonDialog1.ShowOpen
Image1.Picture = LoadPicture(CommonDialog1.FileName)
End Sub
Проект “Вся коллекция фотографий”
(Приложение 2)Создать новый проект.
- В окне Свойств объекта установить для свойства формы Name значение frm1 и для свойства Caption значение названия коллекции, например, “Россия”.
- Активизировать свойство Picture, щелкнуть по значку “…”, в открывшемся окне выбрать нужный графический файл.
- Разместить на форме кнопку и присвоить свойству Name значение Cmd1, а свойству Caption – значение Все.
- Добавим в проект форму командой [Project ––> Add Form].
- Разместить на форму элемент управления Image и активизировать его.
- В окне свойства объектов для свойства Stretch установить True, для свойства Picture выбрать нужный графический файл.
- Активизировать форму и для свойства Caption ввести название картинки.
- Пункты 5–8 повторять столько раз, сколько фотографий собираетесь поместить в проекте.
- Дважды кликнуть по кнопке Все и записать программный код.
Листинг программы:
Private Sub Cmd1_Click()
Frm1.Visible = True
Form1.Visible = True
Form2.Visible = True
Form3.Visible = True
Form4.Visible = True
Form5.Visible = True
Form6.Visible = True
Form7.Visible = True
Form8.Visible = True
Form9.Visible = True
Form10.Visible = True
Form11.Visible = True
Form12.Visible = True
Form13.Visible = True
Form14.Visible = True
Form15.Visible = True
End Sub10. Запустить проект на выполнение и щелкнуть по кнопке Все.
Откроются все изображения, поочередно закрываем каждое окно.
11. Сохранить проект меню Fail ––> Make Project.exe и поместить его в коллекцию альбомов.
Проект “Создание электронного альбома для просмотра картинок с подписями в процессе перетаскивания”. (Приложение 3)
Создадим новый проект.
- Активизировать форму Form1 щелчком мыши. В окне свойств объекта выбрать свойство Caption и присвоить ему значение “Перетаскивание картинок”.
- Разместим на форме элемент управления Image1 и в центре формы элемент управления Image2.
- Для создания массива элементов выделить элемент Image1, затем скопировать его, сделать вставку и в ответ на запрос ответить “Да”.
- Все элементы будут иметь имя Image1 и различаться лишь индексом.
- Всем объектам Image1 установить свойство DragMode=Automatic.
- Выделить элемент Image2 и установить свойство Strech=False.
- Поместим на форму метку Label1. Установим свойство Autosize=true, что позволит менять размер метки Label1 в зависимости от размера текста, помещенного в свойство Caption.
- Для перетаскивания маленьких картинок в соответствии с картинками указателя мыши необходим метод DragDrop объекта-источника.
- Картинки в объекты Image1(i) будем загружать во время загрузки формы. Их название будем помещать в свойство Tag этих объектов.
- Переносимая картинка попадает в объект-приемник и остается там после отпускания кнопки мыши. Наступает событие DragOver объекта-приемника.
Листинг программы:
Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
Source.Move X, Y
End Sub
Private Sub Form_Load()
Image1(0).Picture= LoadPicture("C:\Project\Mhk\Images\Portrait\Bruyllob_Avtoportret.jpg")*
Image1(0).Tag = "Брюллов_Автопортрет"
Image1(1).Picture= LoadPicture("C:\Project\Mhk\Images\Portrait\Bugaevskii_Blagodarnii_Portret.jpg")
Image1(1).Tag = "Бугаевский_Благодарный_Портрет художника Боровиковского"
Image1(2).Picture = LoadPicture("C:\Project\Mhk\Images\Portrait\Gontharova_Avtoportret c geltimi liliami.jpg")
Image1(2).Tag = "Гончарова_Автопортрет с желтыми линиями"**
…
Image1(21).Picture = LoadPicture("C:\Project\Mhk\Images\Portrait\Tiranov_Portret Aivasovskogo.jpg")
Image1(21).Tag = "Тыранов_Портрет Айвазовского"
End Sub
Private Sub Image2_DragOver(Source As Control, X As Single, Y As Single, State As Integer)
Image2.Picture = Source.Picture
Label1.Caption = Source.Tag
End Sub
_________________________________
* Укажите путь ваших файлов.
** Воспользуйтесь возможностью копирования и
вставки.
Проект “Коллекция картин”
(Приложение 4)Все объекты, необходимые для создания приложения, внесем в таблицу и запишем информацию об используемых свойствах.
Объект |
Свойство |
Значение по умолчанию |
Новое значение |
1. Form1 | Caption | Form1 | А.С. Пушкин |
2. Frame | Caption | Frame1 | Коллекция картин |
3. Option1 | Caption | Option1 | Записать наименование первой картины |
Visible | False | True | |
4. Нам нужны еще шесть переключателей. Копируем объект Option1 в буфер обмена. Теперь вставить, на запрос при вставке копии объекта ответить Да |
|||
5. Option1 | Caption | Option1 | Записать наименование второй картины |
Visible | False | False | |
6. Image1(Рисунок) | Stretch (Растяжка) | False | True(Да) |
Picture | (None) … | C:\....(выбрать файл) | |
п5, п6 повторить 5 раз. |
Листинг программы:
Private Sub Option1_Click(Index As Integer)
Image1.Visible = Index = 0
Image2.Visible = Index = 1
Image3.Visible = Index = 2
Image4.Visible = Index = 3
Image5.Visible = Index = 4
Image6.Visible = Index = 5
Image7.Visible = Index = 6
End Sub
Литература:
- Алиев В.К. Visual Basic. М.: СОЛОН-Р, 2002.
- Симонович С.В., Евсеев Г.А. Занимательное программирование: Visual Basic. М.:АСТ-ПРЕСС КНИГА: Инфорком-Пресс, 2002.
- Угринович Н.Д. Исследование информационных моделей. М.: БИНОМ. Лаборатория знаний, 2004.