Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Изменение Picture Box / 21 сообщений из 21, страница 1 из 1
18.01.2007, 10:20
    #34263740
Found
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
Как при наведение на PictureBox картинка изменялась на другую. К которой надо путь указать
...
Рейтинг: 0 / 0
18.01.2007, 10:27
    #34263766
Found
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
Для смены сдалал
Код: plaintext
1.
2.
3.
4.
Private Sub Picture3_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim p As StdPicture
Set p = LoadPicture("E:\f.gif")
Picture3.Picture = p
End Sub
А чтоб при отведении курсора менялась на старую обратно?
...
Рейтинг: 0 / 0
18.01.2007, 10:56
    #34263894
orunbek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
На всю форму сделать отловить событие MouseMove и по координатам определять находится ли курсор мыши на PictureBox или вне
...
Рейтинг: 0 / 0
18.01.2007, 11:03
    #34263925
Found
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
А если надо чтобы PictureBox работала как кнопка.
При нажатии меняла картинку и обратно (это я сделал)
Только я использовал
Код: plaintext
Picture3.Picture = LoadPicture("E:\Image\forums-over.gif")
А при создании EXE если этой картинки нету больше он не показывает ее. Можно ли заменить команду LoadPicture на какую-нибудь другую. Чтобы изображение вшивалось в EXE.
...
Рейтинг: 0 / 0
18.01.2007, 13:05
    #34264618
Бенедикт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
FoundМожно ли заменить команду LoadPicture на какую-нибудь другую. Чтобы изображение вшивалось в EXE.
Можно. Такие вшитые в исполняемый модуль данные называются ресурсами. Для подгрузки битмапов используется функция LoadResPicture. Простейший редактор ресурсов есть в Add-In-ах, но можно использовать любой.
...
Рейтинг: 0 / 0
18.01.2007, 14:25
    #34265057
Found
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
Большое спасибо помогло
...
Рейтинг: 0 / 0
18.01.2007, 14:42
    #34265147
Found
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
А можно вместо картинки зашить Шрифт?
И какой командой пользоваться?
Чтобы он использовался внутри EXE. Если у другого пользователя которуму я дал свой EXE этот зашитый шрифт отображался.
...
Рейтинг: 0 / 0
18.01.2007, 15:51
    #34265481
Бенедикт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
FoundА можно вместо картинки зашить Шрифт?Можно зашить любые данные.
FoundИ какой командой пользоваться?Чтобы положить - в редакторе ресурсов "Add Custom Resource...". Чтобы извлечь - функцией LoadResData. Она возвращает байтовый массив.
FoundЧтобы он использовался внутри EXE. Если у другого пользователя которуму я дал свой EXE этот зашитый шрифт отображался.Возвращённый байтовый массив можно сохранить в файл, и вызвать API-шную функцию
Код: plaintext
Declare Function AddFontResource Lib "gdi32" Alias "AddFontResourceA" (ByVal lpFileName As String) As Long
. Внимательно прочти её описание , там есть пара важных моментов.

Кстати, если картинок много и/или они большие, то можно поступить так же: положить их в ресурсы не в виде несжатых битмапов, а в виде GIF или JPEG как custom resource. Пользоваться ими потом можно либо через временные файлы, как выше описано, либо через COM-объект, поддерживающий интерфейс IStream. Если нужно, я найду эту функцию.
...
Рейтинг: 0 / 0
18.01.2007, 18:33
    #34266199
Found
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
А где находится "Add Custom Resource...". ?
извините если глупый вопрос...
...
Рейтинг: 0 / 0
18.01.2007, 18:40
    #34266225
Found
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
Объявляешь
Код: plaintext
Declare Function AddFontResource Lib "gdi32" Alias "AddFontResourceA" (ByVal lpFileName As String) As Long
Не запускается...
...
Рейтинг: 0 / 0
18.01.2007, 18:57
    #34266283
Found
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
Вот что говорит...
...
Рейтинг: 0 / 0
19.01.2007, 11:45
    #34267507
Бенедикт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
FoundА где находится "Add Custom Resource...". ?
извините если глупый вопрос...
См. на рисунке.

FoundНе запускается... Вот что говорит...
Если нажать кнопку "Справка", то можно прочитать, что Declare, сделанный в объектном модуле (модуле формы, к примеру), должен быть Private: Private Declare Function и т.д.
...
Рейтинг: 0 / 0
19.01.2007, 18:20
    #34269168
Found
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
а у меня MSDN коллекция не существует. Пожалуйста переустановите MSDN...а где эту коллекцию взять?
...
Рейтинг: 0 / 0
19.01.2007, 18:56
    #34269244
Бенедикт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
Found,
Была на дисках с Visual Studio 6, VB6 как самостоятельного продукта. Была и есть на дисках сама по себе, но года с 2002-2003 не включает документацию по VS6, как устаревший материал. Он-лайн версия здесь .
...
Рейтинг: 0 / 0
19.01.2007, 19:20
    #34269292
Found
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
А VB Resource Editor где находится?
Благодарю за помощь!
...
Рейтинг: 0 / 0
19.01.2007, 19:39
    #34269322
Бенедикт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
Меню: Add-Ins\Add In Manager... Хотя, конечно, зависит от комплектности и опций установки. Если нет VB-шного, подойдёт любой другой редактор ресурсов. Нужно создать .Res-файл и подцепить его (Ctrl+D) в проект.
...
Рейтинг: 0 / 0
02.02.2007, 12:02
    #34301680
Fynjy_22
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
Народ, подскажите пожалуйста апи-функцию, которая загружает *.jpg и *.gif из файла ресурсов в объект Image, находясь в разделе CUSTUM. Заранее благодарю!
...
Рейтинг: 0 / 0
02.02.2007, 13:01
    #34301966
Бенедикт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
Fynjy_22,
модуль:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
Option Explicit

Private Declare Function CreateStreamOnHGlobal Lib "ole32" ( _
   ByVal hGlobal As Long, ByVal fDeleteOnRelease As Long, _
   ppstm As IUnknown) As Long

Private Type GUID
   Data1 As Long
   Data2 As Integer
   Data3 As Integer
   Data4( 7 ) As Byte
End Type

Private Declare Function OleLoadPicture Lib "olepro32" ( _
   ByVal pStream As IUnknown, ByVal lSize As Long, _
   ByVal fRunmode As Long, riid As GUID, ppvPic As IPictureDisp) As Long

Public Function LoadPictureUsingStream(bPicData() As Byte) As IPictureDisp
 Dim lResult As Long
 Dim oStream As IUnknown
 Dim IID_IDispatch As GUID
 
 lResult = CreateStreamOnHGlobal(VarPtr(bPicData(LBound(bPicData))),  0 , oStream)
 If lResult <  0  Then Exit Function
 
 With IID_IDispatch
    .Data1 = &H20400
    .Data4( 0 ) = &HC0
    .Data4( 7 ) = &H46
 End With
 lResult = OleLoadPicture(oStream, UBound(bPicData) - LBound(bPicData) +  1 ,  1 , _
                          IID_IDispatch, LoadPictureUsingStream)
End Function

Проверка в форме:
Код: plaintext
1.
2.
Private Sub Command1_Click()
 Set Image1.Picture = LoadPictureUsingStream(LoadResData( 101 , "CUSTOM"))
End Sub
...
Рейтинг: 0 / 0
03.02.2007, 01:50
    #34303834
Fynjy_22
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
Огромное спасибо!!! завтра попробую :-)
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
27.12.2010, 20:25
    #37037808
ufuf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
где найти этот Picture Box,никак не могу засунуть его в toolbox
...
Рейтинг: 0 / 0
27.12.2010, 21:08
    #37037865
Ципихович Эндрю
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменение Picture Box
ufuf, микрософт пиктуре клип контрол версия 6.0
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Изменение Picture Box / 21 сообщений из 21, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]