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 :

Sauvegarde Form + position


Sujet :

VB.NET

  1. #1
    Membre actif
    Homme Profil pro
    "Développeur"
    Inscrit en
    Octobre 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : "Développeur"
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2011
    Messages : 38
    Par défaut Sauvegarde Form + position
    Bonjour à tous,

    je me tourne vers vous pour un problème (pas vital mais dérangeant).

    J'ai une appli (en form + tabcontrol) pour laquelle je sauvegarde tous les champs modifiables et cliquables à la fermeture ou en cours de programme.

    J'aimerai bien, si on arrete le programme en cours, qu'il puisse reprendre à la position où il a été fermé.

    J'espère me faire comprendre...

    j'ai essayé en sauvegardant le focus le formposition ou je ne sais plus quoi mais ça ne marche pas.... l'un ou l'une d'entre vous saurait m'éclairer?

    merci d'avance

  2. #2
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Par défaut
    Tu parles de la position de la fenêtre ou tu parles de l'état global du formulaire y compris les valeurs saisies par l'utilisateur ?
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  3. #3
    Membre actif
    Homme Profil pro
    "Développeur"
    Inscrit en
    Octobre 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : "Développeur"
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2011
    Messages : 38
    Par défaut
    Tout ce qui concerne les données saisies est déja enregistré,

    je parle de la position au moment de la fermeture du programme.

    Exemple, si au moment de la fermeture le programme se situe,

    form2/tabcontrol2/tabpage3,

    à l'ouverture il me met en form2/tabcontrol2/tabpage3

    et me permet de continuer mon travail où il a été arrêté

  4. #4
    Membre confirmé Avatar de jlm22
    Homme Profil pro
    Etudiant
    Inscrit en
    Décembre 2010
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Décembre 2010
    Messages : 203
    Par défaut
    Salut,
    tu peux enregistrer la position et le nom des tab séleectionnés à la fermeture.

    Etape 1:

    faire une méthode qui à l'événement de fermeture de l'appli (c'est taform.onclosing il me semble).
    En gros ta méthode enregistrera les coordonnées de ta form dans un fichier texte.

    Etape 2 :

    Méthode qui se lance au démarrage de l'appli qui lit ton fichier texte et met en forme ton appli.

    En gros t'as l'idée là.

  5. #5
    Membre chevronné
    Homme Profil pro
    Caféinomane
    Inscrit en
    Septembre 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Caféinomane

    Informations forums :
    Inscription : Septembre 2011
    Messages : 202
    Par défaut
    Bonjour,

    Dans le même registre, vous pouvez définir des "paramètres d'application" dans les propriétés de votre application.

  6. #6
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Par défaut
    Bonsoir,

    utilises la propriété SelectedIndex du TabPage que tu sauvegardes, comme l'as si bien dit "franticfranz", dans les paramètres de l'application (Projet => Propriétés de xxxxxx => Paramètres) et est accessible par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    My.Settings.nomParamètre
    pour sauvegarder rien de plus simple :
    petite ressource à lire : MSDN Settings

    Bonne soirée et bon code.

  7. #7
    Membre actif
    Homme Profil pro
    "Développeur"
    Inscrit en
    Octobre 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : "Développeur"
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2011
    Messages : 38
    Par défaut
    Salut à tous, désolé de répondre si tardivement,

    alors oui en effet je fonctionne avec les my.settings. c'est justement la le problème.... je sais pas quoi sauver.

    Ok selectindex pour tabpages,

    Si je dois juste détecter le form en cours et l'enregistrer pour le réouvrir après fermeture c'est quoi alors? selectform? ca existe?

  8. #8
    Membre actif
    Homme Profil pro
    "Développeur"
    Inscrit en
    Octobre 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : "Développeur"
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2011
    Messages : 38
    Par défaut
    Pour être peut être plus clair, je souhaite par code faire changer le formulaire de démarrage de mon application... si je sauvegarde mon appli à l'instant X dans un formulaire Y je veux que mon application s'ouvre la prochaine fois sur ce même formulaire Y

  9. #9
    Membre actif
    Homme Profil pro
    "Développeur"
    Inscrit en
    Octobre 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : "Développeur"
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2011
    Messages : 38
    Par défaut
    Bon bah résolu:

    1°) j'ai fais un Sub Main plutôt que de sélectionner un formulaire de démarrage de manière standard

    Sub main conditionnel:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    
    Module Module1
    
        Public Sub Main()
    
            If My.Settings.Setting = "0" Then
                Application.EnableVisualStyles()
                Dim frm1 As Form1
                frm1 = New Form1()
                Application.Run(frm1)
            End If
    
    
            If My.Settings.Setting = "1" Then
                Application.EnableVisualStyles()
                Dim frm1 As Form2
                frm1 = New Form2()
                Application.Run(frm1)
            End If
    
    'Et ainsi de suite....
    
        End Sub
    
    
    End Module
    Et ensuite j'ai défini un paramètre ==>

    My.settings.settingX = "nombre"

    Et j'ai fais varier le nombre de 0 à 9

    0 etant le formulaire de départ initial
    1 etant l'étape 1
    2 etant l'étape 2

    etc

    Et j'ai rajouté à la fermeture de chacun des formulaire une petit code qui lui dit: "coco si toi tu te ferme ton paramètre = X et donc dans ce cas à l'ouverture, c'est X qui s'affiche ;-)"

    Merci à tous

  10. #10
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Par défaut
    C'est cool que tu aies trouvé seul et que tu aies mi la solution

    Petite astuce, utilises un select c'est plus lisible (c'est très important la lisibilité ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
            select case My.Settings.Setting 
                case "0"
                    Application.EnableVisualStyles()
                    Dim frm1 As Form1
                    frm1 = New Form1()
                    Application.Run(frm1)
     
                case "1" 
                     Application.EnableVisualStyles()
                     Dim frm1 As Form2
                     frm1 = New Form2()
                     Application.Run(frm1)
     
                case "3"
                     ' etc...
            End Select
    Bon code

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

Discussions similaires

  1. [AC-2007] Formulaires : double écran, sauvegarde de position
    Par Manouille dans le forum IHM
    Réponses: 0
    Dernier message: 19/11/2009, 15h25
  2. Comment sauvegarder la position des colonnes de mon tableau ?
    Par Bruno13 dans le forum Composants VCL
    Réponses: 0
    Dernier message: 04/11/2007, 01h38
  3. Sauvegarde des positions après un Drag and Drop
    Par enok37 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 06/07/2007, 10h26
  4. [javascript] sauvegarde de position pour les barres de défilement
    Par Miniimoi dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/02/2007, 09h34
  5. [VB6] Sauvegarder la position dans un Recordset
    Par inotna2099 dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 29/04/2003, 17h35

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