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

Windows Forms Discussion :

application loading, ecran de demarrage.


Sujet :

Windows Forms

  1. #1
    Membre régulier Avatar de jesslegende
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    156
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2009
    Messages : 156
    Points : 102
    Points
    102
    Par défaut application loading, ecran de demarrage.
    bonjour,
    je souhaite utiliser un écran de demarrage et j'aimerai bien savoir si il y a un événement qui est générer lors du démarrage de l'application ou d'un formulaire pour en profiter à afficher le start up screen.
    merci d'avance les amis.

  2. #2
    Membre averti
    Avatar de Ogotcha
    Inscrit en
    Juillet 2008
    Messages
    232
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Juillet 2008
    Messages : 232
    Points : 398
    Points
    398
    Par défaut
    Je ne vois pas bien ce que tu souhaites vraiment faire mais si tu veux il y a cette fonction qui s'exécute au démarrage de l'application au niveau de ApplicationEvents.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Protected Overrides Function OnInitialize(ByVal commandLineArgs As System.Collections.ObjectModel.ReadOnlyCollection(Of String)) As Boolean
     
                Return MyBase.OnInitialize(commandLineArgs)
     
    End Function
    Mon Blog
    FAQs DotNet
    Fonction utile : Recherche

  3. #3
    Membre éclairé
    Avatar de m-mas
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2003
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2003
    Messages : 576
    Points : 719
    Points
    719
    Par défaut
    si j'ai bien compris tu veux un écran d'attente de chargement de l'application dans lequel tu mets numéro de version, licence, ...

    déjà tu peux l'ajouter via visual studio, bouton droit sur ton projet, ajouter, nouvel élément, choisir "SplashScreen".

    personnellement je n'utilise pas cette option car je veux tout maîtriser par le code et du coup voila ce que je fais :
    - une classe FrmPrincipale qui est le formulaire de démarrage de mon application
    - une classe FrmSplash qui va contenir le code, les informations, ... du splash screen

    dans ton main() c'est à dire le point d'entrée de ton programme tu dois ajouter la gestion de cet écran :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Dim fprincipale As New FrmPrincipale()
            '--Thread pour le splash
            Dim splashThread As New Threading.Thread(New Threading.ThreadStart(AddressOf fprincipale.StartSplash))
     
            splashThread.Start()  '--je lance le splash avant tout
            System.Windows.Forms.Application.Run(fprincipale)   '--je lance le formulaire principale
            If splashThread.IsAlive Then splashThread.Abort()
    Maintenant bien sûr il faut coder "StartSplash" dans le formulaire principale :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    '--on doit accéder au formulaire splash partour
     Private Shared splash As FrmSplash = Nothing
        '--Faire tourner le formulaire splash
        Public Sub StartSplash()
            '--instancier le nouveau splash
            splash = New FrmSplash()
            '--fait lancer le formulaire
            Windows.Forms.Application.Run(splash)
        End Sub 'StartSplash
    il faut bien sûr pouvoir arrêter le formulaire splash une fois le chargement est terminé, du coup une fonction CloseSplash dans le formualire principale :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     Private Sub CloseSplash()
            If splash Is Nothing OrElse splash.IsDisposed Then Return
            '--Fermer le formulaire splash
            splash.Invoke(New EventHandler(AddressOf splash.KillMe))
            splash.Dispose()
            splash = Nothing
        End Sub
    Alors si tu as bien suivi tu me diras qu'il manque quelques choses

    le code de la classe Frmsplash et notamment la fonction KillMe et donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ''' <summary>Ferme le splash</summary>
        Public Sub KillMe(ByVal o As Object, ByVal e As EventArgs)
            Me.Close()
        End Sub
    il reste à faire appel à la fonction closesplash quand on pense que le chargement est terminé, personnellement je charge mes objets dans l'évènement "shown" de mon formualire principale, du coup quand je termine je fais tout simplement appel à CloseSplash()

    il faudra bien sûr gérer les cas de bugs et bien tester ceci
    mon blog http://www.3click-solutions.com/actualites/

    MCP VB.NET (70-305) - (70-306) - (70-310)
    Développeur PHP / Wordpress

  4. #4
    Membre régulier Avatar de jesslegende
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    156
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2009
    Messages : 156
    Points : 102
    Points
    102
    Par défaut
    merci pour vos réponses les amis.
    m_mas, tu veux dire par ca qu'en peux utiliser les threads d'execution pour gérer le chargement de l'application? n'est ce pas?

  5. #5
    Membre régulier Avatar de jesslegende
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    156
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2009
    Messages : 156
    Points : 102
    Points
    102
    Par défaut
    désolé mais les threads pour moi sont pareille aux timers puisque ils sont traiter de maniere manuel hors se que je cherche à faire c'est afficher tand que l'application se charge cette ecran de demarrage qui fera patienter l'utilisateur.

  6. #6
    Membre éclairé
    Avatar de m-mas
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2003
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2003
    Messages : 576
    Points : 719
    Points
    719
    Par défaut
    je t'ai donné 2 pistes pour l'écran de démarrage mais tu n'as retenu que la deuxième que j'ai expliqué voici un lien pour la première piste qui est créer automatiquement un splashscreen ([ame="http://www.google.com/search?hl=fr&client=firefox-a&rls=org.mozilla%3Afr%3Aofficial&hs=DIV&q=VB.NET+splashscreen&btnG=Rechercher&lr=&aq=f&oq="]google[/ame]) avec VB.NET
    mon blog http://www.3click-solutions.com/actualites/

    MCP VB.NET (70-305) - (70-306) - (70-310)
    Développeur PHP / Wordpress

  7. #7
    Membre régulier Avatar de jesslegende
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    156
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2009
    Messages : 156
    Points : 102
    Points
    102
    Par défaut
    c'est justement cette piste que je cherche à la base c'est pourquoi je cherchais un événement généré avec le chargement de l'app afin que je puisse faire appel à un splashscreen.
    par exemple formclose et formclosing l'un quand une form est en cour de fermeture et l'autre quand elle est fermée.
    une idée qui va avec cette piste.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. ecran de demarrage
    Par francky57 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 30/10/2008, 12h16
  2. application sous ecran tactile
    Par med1112 dans le forum Bases de données
    Réponses: 1
    Dernier message: 24/06/2007, 09h40
  3. Réponses: 6
    Dernier message: 25/04/2007, 13h09
  4. Enlever fond d'ecran window demarrage
    Par justaf dans le forum Windows XP
    Réponses: 1
    Dernier message: 29/03/2007, 16h22
  5. Application plein ecran
    Par BOUBOU81 dans le forum MFC
    Réponses: 6
    Dernier message: 03/02/2006, 19h37

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