Focus - icone pres de l'horloge [VB.NET]

tobleronne Messages postés 104 Date d'inscription vendredi 8 août 2003 Statut Membre Dernière intervention 1 mars 2005 - 15 nov. 2003 à 15:10
psykocrash Messages postés 240 Date d'inscription vendredi 14 juin 2002 Statut Membre Dernière intervention 17 mars 2009 - 17 oct. 2004 à 15:19
Bonjour,

comment je peux faire pour que mon application garde le focus (soit en 1er plan sur toutes les autres applications windows) et lorsque je reduit mon appli, faire en sorte que l'icone se mette pres de l'horloge et non dans la barre de tache.

Merci

7 réponses

cs_phil23 Messages postés 79 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 14 juillet 2005 1
16 nov. 2003 à 01:38
1. Si la propriété TopMost du form est à True, ce form reste au premier plan de toutes les autres applications.
0
cs_phil23 Messages postés 79 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 14 juillet 2005 1
16 nov. 2003 à 01:54
2. Avec VB6 il fallait utiliser les API et c'était compliqué. Merci .NET car il existe le contrôle NotifyIcon

Ajoute une icon à NotifyIcon (fenêtre propriété)

'Form1_Load
NotifyIcon1.Visible = False

'Pour afficher
Me.Hide()
NotifyIcon1.Visible = True
NotifyIcon1.Text = "Titre popup....."

Tu peux ajouter un contrôle ContextMenu et le lier à NotifyIcon (fenêtre propriété) et créer ton menu qui sera visible si tu clic sur l'icon près de l'horloge.
0
tobleronne Messages postés 104 Date d'inscription vendredi 8 août 2003 Statut Membre Dernière intervention 1 mars 2005
16 nov. 2003 à 13:17
merci Phil23 mais comment je peux le mettre en true que lorsque je click sur l'icone de diminution de la fenetre ? et l'enlever dans la barre de tache ?

merci a toi
0
cs_phil23 Messages postés 79 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 14 juillet 2005 1
16 nov. 2003 à 17:31
Fait comme ça:

Sur le Form1 tu places un contrôle NotifyIcon1 et ContextMenu1.
Dans propriété de NotifyIcon1:
- ContextMenu = ContextMenu1
- Icon = Choisis un fichier .ico

Dans propriété de ContextMenu1:
- Clic sur edit menu (en bas)
- Ajoute un menu (MenuItem1) et comme texte tu mets Afficher.

Colle ce code et c'est fait !

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Au démarrage cache l'icone
NotifyIcon1.Visible = False
End Sub

Private Sub Form1_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing
'Arrêt du prog. cache l'icone
NotifyIcon1.Visible = False
End Sub

Private Sub MenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click
'Menu contextuel (Afficher)
Me.Show()
NotifyIcon1.Visible = False
Me.WindowState = FormWindowState.Normal
End Sub

Private Sub Form1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Resize
'Cacher le form et afficher l'icone
If Me.WindowState = FormWindowState.Minimized Then
Me.Hide()
NotifyIcon1.Visible = True
End If
End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tobleronne Messages postés 104 Date d'inscription vendredi 8 août 2003 Statut Membre Dernière intervention 1 mars 2005
16 nov. 2003 à 17:58
Merci a toi, tout fonctionne ;o)

juste un petit truc, si je ne veux pas faire de menu contextuelle mais simplement doublecliker sur l'icone du notifyicon pour que ma fenetre rapparaisse, je fais comment ?

merci encore
0
cs_phil23 Messages postés 79 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 14 juillet 2005 1
16 nov. 2003 à 19:00
Et bien utilise les évenements de NotifyIcon1 à la place des évenements de MenuItem1.

'Par exemple pour clic
Private Sub NotifyIcon1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles NotifyIcon1.Click
'Afficher
Me.Show()
NotifyIcon1.Visible = False
Me.WindowState = FormWindowState.Normal
End Sub

'Il y a aussi double-clic
Private Sub NotifyIcon1_DoubleClick.........
0
psykocrash Messages postés 240 Date d'inscription vendredi 14 juin 2002 Statut Membre Dernière intervention 17 mars 2009
17 oct. 2004 à 15:19
Moi je cré mes menus dynamiquement, mais je sais pas comment récupérer l'index de l'item sélectionné par l'utilisateur, qq sais ?

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        'Pour afficher
        Me.Hide()
        NotifyIcon1.Visible = True
        NotifyIcon1.Text = "Titre"
        NotifyIcon1.Icon = Me.Icon
        ContextMenu1.MenuItems.Add("[Nouveau Dossier]").MenuItems.Add("[Nouveau Fichier]")
        ContextMenu1.MenuItems.Add("[Nouveau Fichier]")
    End Sub
0
Rejoignez-nous