Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Помогите! Срочно! Добавлено: 17.01.03 14:05  

Автор вопроса:  Фолко | Web-сайт: нет

дело в том что я сейчас пишу программу База данных - отдел кадров БДОК (Database a staff department), и входе написания возникла проблема, дело в том что эту программу я делаю как реферат на экзамен, и поэтому стараюсь напичкать её всякими эффектами - для зрелищьности (ну что б проверяющие ахнули :)). Так вот: использую в качестве кнопок объекты image, ну мышка проходит над поверхностью - картинка меняется (иконка). Всё вроде хорошо, всё красиво и работает, но вдру я подумал: при каждой смене иконки прогграмма запрашивает иконку по адресу который я указал, но ведь у пользователя наверняка нет такой директори и прграмма выдаст ошибку "мол не могу найти", так вот, вопрос:1. КАК МНЕ ЗАПИХНУТЬ КОЛЛЕКЦИЮ ИКОНОК В ФАЙЛ .DLL КАК ЭТО ЗДЕЛАНО В WINDOWS, КОГДА ХОЧЕШЬ СМЕНИТЬ ЗНАЧЁК ЯРЛЫКА ИЛИ ФАЙЛА ОН ПРЕДЛАГАЕТ ПО УМОЛЧАНИЮ НЕБОЛЬШОЙ НАБОР ИКОНОК ИЗ ФАЙЛА PIFMGR.DLL

НАХОДЯЩЕГОСЯ В WINDOWS\SYSTEM\ 
2. КАК ИХ ИЗ ЭТОЙ КОЛЛЕКЦИИ ВЫЗЫВАТЬ?
Заранее всем спасибо.

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 Artificial Intelligence



ICQ: 275368971 

Вопросов: 8
Ответов: 131
 Профиль | | #1 Добавлено: 17.01.03 14:47

Испльзовать DLL необязательно.

Путь к картинкам нужно указывать через app.path\имя папки с картинками (при этом ебстественно папка с картинками должна лежать в той же директории где и программа).

А можно все твои картинки запихать в саму программу, для этого на каждую кнопку необходимо по три image, которые лежат друг на друге.

Например сверху лежит image3(картинку в нее засовывать ненадо) и ты пишешь

в событие image3_MouseMove: image3=image1

в событие Form_MouseMove: image3=image2 (а в image1 и image2 картинки) и все.

Ответить

Номер ответа: 2
Автор ответа:
 Воронков Василий



Вопросов: 1
Ответов: 90
 Профиль | | #2 Добавлено: 17.01.03 15:27

По поводу App.Path - это из области "садись, пять!" (В смысле - все правильно, конечно). А вообще стыдно "пытаться напичкать программу спецэффектами" и при этом не знать, что такое абсолютные пути. Но тем не менее. Буду последователен. Если интересно как запихнуть иконки в DLL (тоже ничего себе способ, если не хочешь основную директорию захламлять графикой; тем более, иконок-то наверняка много), то вот он:

1.Создаете DLL-проект.

2.В модуле класса прописываете такую функцию:

Public Function PastePicture (ByVal PictureIndex As Integer) as IPictureDisp

'Здесь суть такая:

If PictureIndex = 1 then

Set PastePicture = Form1.Images(0).Picture

ElseIf

...

end if

End Function

Form1 - форма, созданная внутри DLL-проекта. Для хранения картинок можно использовать динамический массив элементов (как в примере) или, допустим, ImageList из CommonControls (тоже ничего себе способ).

Само собой как обращаться с DLL вы знаете.

[Set Picture1.Picture = MyDll.PastePicture(3)]

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам