IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Visual studio 2010 : Allumer Form2 sans l'afficher avec écoute des évenements comme s'il était en Show


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    293
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 293
    Par défaut Visual studio 2010 : Allumer Form2 sans l'afficher avec écoute des évenements comme s'il était en Show
    Bonjour,


    J'ai ça dans mon Form1.designer.vb:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Friend WithEvents frm As Form2
    et dans Form1.vb :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
                If (Me.frm Is Nothing) Then
                    Me.frm = New Form2()
                    'Me.frm.Show()
                    'Me.frm.Visible=false
     
     
                End If
     End Sub
    Form2 dés qu'il est affiché en invisible comment il faudrait faire pour qu'il affiche un msgbox de n'importe quel Sub ou autre.

    (j'ai testé Form2.visible = false et c'est pas efficace une fenêtre clignotte sur l'ecran c'est sale)

    Merci , salutations.

  2. #2
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2013
    Messages
    263
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 263
    Par défaut
    Perso, c'est ce que j'aurai fait mais sinon quand tu déclare ton Form2, normalement tu peux changer ces propriétés avant d'envoyer le show, essaye de le passé en invisible avant de l'ouvrir. Je suis pas sur que sa marche mais essaye toujours.

  3. #3
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2013
    Messages
    263
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 263
    Par défaut
    Laisse tombé sa marche pas, j'ai essayé et le show ré-initialise la propriété Visible de ton Form donc soit tu utilise une autre méthode que Show, soit tu accepte le clignotement qui ne dure pas plus de 200 ms.

  4. #4
    Membre Expert
    Homme Profil pro
    Développeur .Net / Delphi
    Inscrit en
    Juillet 2002
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .Net / Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2002
    Messages : 738
    Par défaut
    Bonjour,

    On peut aussi se demander s'il n'y a pas d'autres méthodes pour arriver à tes fins. Créer une forme pour ne pas l'afficher, à quoi ça sert ? Quel est ton besoin exactement ? Il faudrait expliquer un peu je pense ...

    eb.

  5. #5
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2013
    Messages
    263
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 263
    Par défaut
    Regarde au niveau de la méthode Hide et des propriétés ShowInTaskBar et Opacity. J'ai des doute que sa puissent t'aider mais comme viens de le dire ebastien, explique un peu le contexte pour voir si tu as réellement besoin d'ouvrir ta fenêtre en fond de tache ou si tu est prêt a tous changer dans ton code pour ne pas avoir à ouvrir ta fenêtre et du coup éviter le clignotement.

  6. #6
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2013
    Messages
    263
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 263
    Par défaut
    tu peux aussi réaliser des actions pendant un évènement, par exemple, il existe un évènement qui te permet d'exécuter des instructions pendant qu'un Form se ferme, je pense qu'il doit avoir la même chose pendant qu'un Form s'ouvre. Regarde autour de l'évènement Shown.

    Sinon voila un détaille de tous les évènements qui existe :
    http://msdn.microsoft.com/fr-fr/libr...rm_events.aspx

  7. #7
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 198
    Par défaut
    Citation Envoyé par ebastien Voir le message
    On peut aussi se demander s'il n'y a pas d'autres méthodes pour arriver à tes fins. Créer une forme pour ne pas l'afficher, à quoi ça sert ? Quel est ton besoin exactement ? Il faudrait expliquer un peu je pense ...
    +1

    rien ne sert de chercher à bricoler pour faire quelque chose d'idiot au lieu de faire quelque chose de normal

    ou alors expliciter le contexte ...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  8. #8
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2013
    Messages
    263
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 263
    Par défaut
    En faite au niveau des bonnes pratiques, normalement c'est déconseillé de faire tournée du code en fond de tache dans une Form, une Form c'est fait pour être afficher ou fermer si t'en as plus besoin en théorie. Apres si ta envie de la faire tournée en fond pour exécuter des instructions, il vaux mieux partir sur un autre type de page (d'après un pro de ma boite).

    PS: Je connais pas les bonnes pratique en programmation objet, si qqn peut m'orienter vers un site ou une adresse car je me rend compte que je commence à être bloquer par ce petit souci qui complique me programme de plus en plus et qui m'empêche par la suite de faire des changement quitte à tous changer.

  9. #9
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
                If (Me.frm Is Nothing) Then
                    Me.frm = New Form2() ' la fenetre est instanciée
            frm.Action()
                 End If
     End Sub
    Ainsi la fenêtre est instanciée.

    dans form2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        Public Sub Action()
            MsgBox("réagit")
        End Sub
    Tu peux ainsi appeler les fonctions de form2 (mais attention le load n'est as fait, pour ce il faut aussi déclencher l'événement)

    A+, Hervé.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  10. #10
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Par défaut
    Citation Envoyé par rv26t Voir le message
    (mais attention le load n'est as fait, pour ce il faut aussi déclencher l'événement)
    Pour compléter mon post,
    Il vaut mieux avoir une sub Init en public que tu peux appeler comme l'exemple avec action, et dans load de ta form2 (lors de son déclenchement) si cet init n'a pas été fait l'exécuter.

    Mais les remarques de ebastien et Pol63 sont judicieuses.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

Discussions similaires

  1. Visual Studio 2010 et .NET Framework 4.0 disponible en version Bêta
    Par Jérôme Lambert dans le forum Visual Studio
    Réponses: 32
    Dernier message: 03/09/2014, 22h36
  2. [Débutant] afficher une graphe visual studio 2010
    Par pharaon88 dans le forum Visual Studio
    Réponses: 0
    Dernier message: 05/03/2013, 21h16
  3. F# sera inclus dans Visual Studio 2010
    Par LLB dans le forum F#
    Réponses: 7
    Dernier message: 16/06/2010, 13h43
  4. Réponses: 8
    Dernier message: 30/08/2009, 10h19
  5. Téléchargez la première CTP de Visual Studio 2010 et du .NET Framework 4.0
    Par Jérôme Lambert dans le forum Général Dotnet
    Réponses: 5
    Dernier message: 31/10/2008, 11h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo