Страница: 1 |
Страница: 1 |
Вопрос: Смена иконки формы
Добавлено: 10.01.07 22:44
Автор вопроса: Sacred Phoenix | ICQ: 304238252
Загружается иконка через LoadIcon. Можно ли по возвращенному хэндлу сменить иконку формы (Me.Icon)?
Ответы
Всего ответов: 8
Номер ответа: 1
Автор ответа:
JMP
Вопросов: 6
Ответов: 171
Профиль | | #1
Добавлено: 11.01.07 00:47
Послать сообщение диалогу
WM_SETICON
wParam = (WPARAM) fType; // icon type
lParam = (LPARAM) (HICON) hicon; // handle of icon
Номер ответа: 2
Автор ответа:
Sacred Phoenix
ICQ: 304238252
Вопросов: 52
Ответов: 927
Профиль | | #2
Добавлено: 11.01.07 15:25
JMP, спасибо огромное!
Номер ответа: 3
Автор ответа:
Серёга
ICQ: 262809473
Вопросов: 17
Ответов: 561
Web-сайт:
Профиль | | #3
Добавлено: 11.01.07 21:36
А почему вот этот код у меня не работает?
Иконка просто исчезает и всё...
Private Declare Function ExtractIcon Lib "shell32.dll" Alias "ExtractIconA" (ByVal hInst As Long, ByVal lpszExeFileName As String, ByVal nIconIndex As Long) As Long
Private Sub Form_Load()
Dim a As Long
a = ExtractIcon(Me.hwnd, "c:\1.ico", 0)
If a <> 0 Then a = SendMessage(Me.hwnd, &H80, 0, a)
End Sub
Номер ответа: 4
Автор ответа:
Sacred Phoenix
ICQ: 304238252
Вопросов: 52
Ответов: 927
Профиль | | #4
Добавлено: 11.01.07 21:56
2 Серега: обрати внимание
Лично я сделал так:
Dim hSmallIcon As Long
Call ExtractIconEx(App.Path & "\" & App.EXEName & ".exe", 0, ByVal 0, hSmallIcon, 255)
If (hSmallIcon <> 0) Then Call SendMessage(Me.hwnd, WM_SETICON, 0, ByVal hSmallIcon&
End Sub
Номер ответа: 5
Автор ответа:
Sacred Phoenix
ICQ: 304238252
Вопросов: 52
Ответов: 927
Профиль | | #5
Добавлено: 11.01.07 21:59
А-я-яй, че-та подчеркивание внутри тега CODE не работает :\
А по сабжу не наю: мона ли в аргументе указывать путь к .ico?
Номер ответа: 6
Автор ответа:
Серёга
ICQ: 262809473
Вопросов: 17
Ответов: 561
Web-сайт:
Профиль | | #6
Добавлено: 11.01.07 22:06
The ExtractIcon function retrieves the handle of an icon from the specified executable file, dynamic-link library (DLL), or icon file.
HICON ExtractIcon(
HINSTANCE hInst, // instance handle
LPCTSTR lpszExeFileName, // filename of file with icon
UINT nIconIndex // index of icon to extract
Parameters
hInst
Identifies the instance of the application calling the function.
lpszExeFileName
Points to a null-terminated string specifying the name of an executable file, DLL, or icon file.
nIconIndex
Specifies the index of the icon to retrieve. If this value is 0, the function returns the handle of the first icon in the specified file. If this value is -1, the function returns the total number of icons in the specified file.
- видимо можно, но почему - то не фурычит...
Номер ответа: 7
Автор ответа:
Sacred Phoenix
ICQ: 304238252
Вопросов: 52
Ответов: 927
Профиль | | #7
Добавлено: 11.01.07 23:05
а ну дык тада тебе не Me.hWnd нужно указывать, а App.hInstance
Номер ответа: 8
Автор ответа:
Серёга
ICQ: 262809473
Вопросов: 17
Ответов: 561
Web-сайт:
Профиль | | #8
Добавлено: 12.01.07 17:45
Пробовал. Не работает.