Icône + supprimer croix de fermeture dans la barre de titre
2 réponses
Room |312|
Bonsoir,
J'ai not=E9 avec int=E9r=EAt la possibilit=E9 de supprimer la=20
croix de fermeture d'un userform ; idem pour ce qui est=20
d'y mettre une ic=F4ne. En revanche, =E7a ne fonctionne pas=20
lorsque je veux combiner les deux : pas de croix de=20
fermeture + 1 ic=F4ne. Soit c'est l'un, soit c'est l'autre.=20
Comment faire ? Merci.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Michel Pierron
Bonsoir Room |312|; Hé oui, il faut choisir; par contre, tu peux facilement inhiber la croix de fermeture (auquel cas, ne pas oublier de placer un bouton qui ferme l'userform): Private Declare Function FindWindow& Lib "user32" Alias _ "FindWindowA" (ByVal lpClassName$, ByVal lpWindowName$) Private Declare Function SetWindowLong& Lib "user32" Alias _ "SetWindowLongA" (ByVal hwnd&, ByVal nIndex&, ByVal dwNewLong&) Private Declare Function ExtractIcon& Lib "shell32.dll" _ Alias "ExtractIconA" (ByVal hInst&, ByVal lpszExeFileName$ _ , ByVal nIconIndex&) Private Declare Function SendMessage& Lib "user32" Alias _ "SendMessageA" (ByVal hwnd&, ByVal wMsg&, ByVal wParam% _ , ByVal lParam As Any) Private Declare Function GetSystemMenu& Lib "user32" _ (ByVal hwnd&, ByVal bRevert&) Private Declare Function DrawMenuBar& Lib "user32" (ByVal hwnd&) Private Declare Function DeleteMenu& Lib "user32" _ (ByVal hMenu&, ByVal nPosition&, ByVal wFlags&)
Private Sub UserForm_Initialize() Dim hwnd&, IcoPath$, hIcon& hwnd = FindWindow(vbNullString, Me.Caption) IcoPath = ThisWorkbook.Path & "msn.ico" If Len(Dir(IcoPath)) Then hIcon = ExtractIcon(0, IcoPath, 0) SendMessage hwnd, &H80, 0, hIcon End If DeleteMenu GetSystemMenu(hwnd, 0), &HF060, 0& DrawMenuBar hwnd End Sub
Private Sub CommandButton1_Click() Unload Me End Sub
MP
"Room |312|" a écrit dans le message de news:461801c47343$a03d6e00$ Bonsoir,
J'ai noté avec intérêt la possibilité de supprimer la croix de fermeture d'un userform ; idem pour ce qui est d'y mettre une icône. En revanche, ça ne fonctionne pas lorsque je veux combiner les deux : pas de croix de fermeture + 1 icône. Soit c'est l'un, soit c'est l'autre. Comment faire ? Merci.
Bonsoir Room |312|;
Hé oui, il faut choisir; par contre, tu peux facilement inhiber la croix de
fermeture (auquel cas, ne pas oublier de placer un bouton qui ferme
l'userform):
Private Declare Function FindWindow& Lib "user32" Alias _
"FindWindowA" (ByVal lpClassName$, ByVal lpWindowName$)
Private Declare Function SetWindowLong& Lib "user32" Alias _
"SetWindowLongA" (ByVal hwnd&, ByVal nIndex&, ByVal dwNewLong&)
Private Declare Function ExtractIcon& Lib "shell32.dll" _
Alias "ExtractIconA" (ByVal hInst&, ByVal lpszExeFileName$ _
, ByVal nIconIndex&)
Private Declare Function SendMessage& Lib "user32" Alias _
"SendMessageA" (ByVal hwnd&, ByVal wMsg&, ByVal wParam% _
, ByVal lParam As Any)
Private Declare Function GetSystemMenu& Lib "user32" _
(ByVal hwnd&, ByVal bRevert&)
Private Declare Function DrawMenuBar& Lib "user32" (ByVal hwnd&)
Private Declare Function DeleteMenu& Lib "user32" _
(ByVal hMenu&, ByVal nPosition&, ByVal wFlags&)
Private Sub UserForm_Initialize()
Dim hwnd&, IcoPath$, hIcon&
hwnd = FindWindow(vbNullString, Me.Caption)
IcoPath = ThisWorkbook.Path & "msn.ico"
If Len(Dir(IcoPath)) Then
hIcon = ExtractIcon(0, IcoPath, 0)
SendMessage hwnd, &H80, 0, hIcon
End If
DeleteMenu GetSystemMenu(hwnd, 0), &HF060, 0&
DrawMenuBar hwnd
End Sub
Private Sub CommandButton1_Click()
Unload Me
End Sub
MP
"Room |312|" <anonymous@discussions.microsoft.com> a écrit dans le message
de news:461801c47343$a03d6e00$a401280a@phx.gbl...
Bonsoir,
J'ai noté avec intérêt la possibilité de supprimer la
croix de fermeture d'un userform ; idem pour ce qui est
d'y mettre une icône. En revanche, ça ne fonctionne pas
lorsque je veux combiner les deux : pas de croix de
fermeture + 1 icône. Soit c'est l'un, soit c'est l'autre.
Comment faire ? Merci.
Bonsoir Room |312|; Hé oui, il faut choisir; par contre, tu peux facilement inhiber la croix de fermeture (auquel cas, ne pas oublier de placer un bouton qui ferme l'userform): Private Declare Function FindWindow& Lib "user32" Alias _ "FindWindowA" (ByVal lpClassName$, ByVal lpWindowName$) Private Declare Function SetWindowLong& Lib "user32" Alias _ "SetWindowLongA" (ByVal hwnd&, ByVal nIndex&, ByVal dwNewLong&) Private Declare Function ExtractIcon& Lib "shell32.dll" _ Alias "ExtractIconA" (ByVal hInst&, ByVal lpszExeFileName$ _ , ByVal nIconIndex&) Private Declare Function SendMessage& Lib "user32" Alias _ "SendMessageA" (ByVal hwnd&, ByVal wMsg&, ByVal wParam% _ , ByVal lParam As Any) Private Declare Function GetSystemMenu& Lib "user32" _ (ByVal hwnd&, ByVal bRevert&) Private Declare Function DrawMenuBar& Lib "user32" (ByVal hwnd&) Private Declare Function DeleteMenu& Lib "user32" _ (ByVal hMenu&, ByVal nPosition&, ByVal wFlags&)
Private Sub UserForm_Initialize() Dim hwnd&, IcoPath$, hIcon& hwnd = FindWindow(vbNullString, Me.Caption) IcoPath = ThisWorkbook.Path & "msn.ico" If Len(Dir(IcoPath)) Then hIcon = ExtractIcon(0, IcoPath, 0) SendMessage hwnd, &H80, 0, hIcon End If DeleteMenu GetSystemMenu(hwnd, 0), &HF060, 0& DrawMenuBar hwnd End Sub
Private Sub CommandButton1_Click() Unload Me End Sub
MP
"Room |312|" a écrit dans le message de news:461801c47343$a03d6e00$ Bonsoir,
J'ai noté avec intérêt la possibilité de supprimer la croix de fermeture d'un userform ; idem pour ce qui est d'y mettre une icône. En revanche, ça ne fonctionne pas lorsque je veux combiner les deux : pas de croix de fermeture + 1 icône. Soit c'est l'un, soit c'est l'autre. Comment faire ? Merci.
Room |312|
Va pour la croix inhibée ! Merci bien.
-----Message d'origine----- Bonsoir Room |312|; Hé oui, il faut choisir; par contre, tu peux facilement inhiber la croix de
fermeture (auquel cas, ne pas oublier de placer un bouton qui ferme
l'userform): Private Declare Function FindWindow& Lib "user32" Alias _ "FindWindowA" (ByVal lpClassName$, ByVal lpWindowName$) Private Declare Function SetWindowLong& Lib "user32" Alias _
Private Sub UserForm_Initialize() Dim hwnd&, IcoPath$, hIcon& hwnd = FindWindow(vbNullString, Me.Caption) IcoPath = ThisWorkbook.Path & "msn.ico" If Len(Dir(IcoPath)) Then hIcon = ExtractIcon(0, IcoPath, 0) SendMessage hwnd, &H80, 0, hIcon End If DeleteMenu GetSystemMenu(hwnd, 0), &HF060, 0& DrawMenuBar hwnd End Sub
Private Sub CommandButton1_Click() Unload Me End Sub
MP
"Room |312|" a écrit dans le message
de news:461801c47343$a03d6e00$ Bonsoir,
J'ai noté avec intérêt la possibilité de supprimer la croix de fermeture d'un userform ; idem pour ce qui est d'y mettre une icône. En revanche, ça ne fonctionne pas lorsque je veux combiner les deux : pas de croix de fermeture + 1 icône. Soit c'est l'un, soit c'est l'autre. Comment faire ? Merci.
.
Va pour la croix inhibée ! Merci bien.
-----Message d'origine-----
Bonsoir Room |312|;
Hé oui, il faut choisir; par contre, tu peux facilement
inhiber la croix de
fermeture (auquel cas, ne pas oublier de placer un
bouton qui ferme
l'userform):
Private Declare Function FindWindow& Lib "user32" Alias _
"FindWindowA" (ByVal lpClassName$, ByVal lpWindowName$)
Private Declare Function SetWindowLong& Lib "user32"
Alias _
Private Sub UserForm_Initialize()
Dim hwnd&, IcoPath$, hIcon&
hwnd = FindWindow(vbNullString, Me.Caption)
IcoPath = ThisWorkbook.Path & "msn.ico"
If Len(Dir(IcoPath)) Then
hIcon = ExtractIcon(0, IcoPath, 0)
SendMessage hwnd, &H80, 0, hIcon
End If
DeleteMenu GetSystemMenu(hwnd, 0), &HF060, 0&
DrawMenuBar hwnd
End Sub
Private Sub CommandButton1_Click()
Unload Me
End Sub
MP
"Room |312|" <anonymous@discussions.microsoft.com> a
écrit dans le message
de news:461801c47343$a03d6e00$a401280a@phx.gbl...
Bonsoir,
J'ai noté avec intérêt la possibilité de supprimer la
croix de fermeture d'un userform ; idem pour ce qui est
d'y mettre une icône. En revanche, ça ne fonctionne pas
lorsque je veux combiner les deux : pas de croix de
fermeture + 1 icône. Soit c'est l'un, soit c'est l'autre.
Comment faire ? Merci.
Private Sub UserForm_Initialize() Dim hwnd&, IcoPath$, hIcon& hwnd = FindWindow(vbNullString, Me.Caption) IcoPath = ThisWorkbook.Path & "msn.ico" If Len(Dir(IcoPath)) Then hIcon = ExtractIcon(0, IcoPath, 0) SendMessage hwnd, &H80, 0, hIcon End If DeleteMenu GetSystemMenu(hwnd, 0), &HF060, 0& DrawMenuBar hwnd End Sub
Private Sub CommandButton1_Click() Unload Me End Sub
MP
"Room |312|" a écrit dans le message
de news:461801c47343$a03d6e00$ Bonsoir,
J'ai noté avec intérêt la possibilité de supprimer la croix de fermeture d'un userform ; idem pour ce qui est d'y mettre une icône. En revanche, ça ne fonctionne pas lorsque je veux combiner les deux : pas de croix de fermeture + 1 icône. Soit c'est l'un, soit c'est l'autre. Comment faire ? Merci.