Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS Access > Значок форм и отчётов


Автор: Волшебник 19.4.2011, 13:54
Добрый день!
Хочу при загрузке Акса сменить значок форм и отчётов.
Как присвоить к нему путь значка?

Пробую так:

В AutoExec запускаю программу Значок.
При загрузке Акса значок приложения меняется,
но формы все-равно открываются со старым значком или значком Акса
Что здесь можно сделать? Подскажите.

Код

Option Compare Database
Option Explicit

Public Declare Function LoadImage Lib "user32" _
Alias "LoadImageA" _
(ByVal hInst As Long, _
ByVal lpsz As String, _
ByVal un1 As Long, _
ByVal n1 As Long, _
ByVal n2 As Long, _
ByVal un2 As Long) _
As Long

Public Declare Function SendMessage Lib "user32" _
Alias "SendMessageA" _
(ByVal hWnd As Long, _
ByVal wMsg As Long, _
ByVal wParam As Long, _
LParam As Any) _
As Long

Public Const WM_GETICON = &H7F
Public Const WM_SETICON = &H80
Public Const ICON_SMALL = 0
Public Const ICON_BIG = 1

Public Const IMAGE_BITMAP = 0
Public Const IMAGE_ICON = 1
Public Const IMAGE_CURSOR = 2
Public Const IMAGE_ENHMETAFILE = 3

Public Const LR_DEFAULTCOLOR = &H0
Public Const LR_MONOCHROME = &H1
Public Const LR_COLOR = &H2
Public Const LR_COPYRETURNORG = &H4
Public Const LR_COPYDELETEORG = &H8
Public Const LR_LOADFROMFILE = &H10
Public Const LR_LOADTRANSPARENT = &H20
Public Const LR_DEFAULTSIZE = &H40
Public Const LR_LOADMAP3DCOLORS = &H1000
Public Const LR_CREATEDIBHeader = &H2000
Public Const LR_COPYFROMRESOURCE = &H4000
Public Const LR_SHARED = &H8000

Public Function SetFormIcon(hWnd As Long, IconPath As String) As Boolean
Dim hIcon As Long
hIcon = LoadImage(1&, IconPath, IMAGE_ICON, 16, 16, LR_LOADFROMFILE)
If hIcon <> 0 Then
Call SendMessage(hWnd, WM_SETICON, 0, ByVal hIcon)
SetFormIcon = True
End If
End Function

Function Значок()
SetFormIcon Application.hWndAccessApp, CurrentProject.Path & "\Client.ico"
End Function

Автор: Akina 19.4.2011, 15:41
Попробуйте менять икону самОй формы в методе OnLoad этой формы.

Автор: bopoha 20.4.2011, 22:49
Как-то уж больно все сложно.
Хотя все намного проще.
Идем в параметры запуска приложения и указываем там путь.
Естественно этот параметр можно задавать программно см. имена и значения коллекции CurrentDb.Parametrs.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)