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 :

Empecher de sortir de l'écran ?


Sujet :

Windows Forms

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 15
    Par défaut Empecher de sortir de l'écran ?
    Bonjour !
    Je cherche un moyen d'empêcher de sortir de l'écran mon application.
    J'ai fait une application 500 x 86 px .
    En gros, je voudrais que quand on veut sortir de l'écran l'application, elle se remette au bord de l'écran.
    Je suis nouveau en VB.NET.
    Merci

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    tu peux gérer l'évènement Move pour contrôler que la nouvelle position est dans l'écran et redéplacer si besoin

  3. #3
    Membre expérimenté Avatar de Faladin
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    333
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2007
    Messages : 333
    Par défaut
    Pourquoi ne pas tout simplement empêcher le mouvement de cette fenêtre, et la faire apparaître toujours centré sur son parent ou sur l'écran?

  4. #4
    Membre Expert Avatar de Danyel
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    1 699
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Hérault (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 699
    Par défaut
    En utilisant la recherche, tu tomberas sur un post assez recent dont le sujet est strictement le meme

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Août 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 15
    Par défaut
    Bonjour,
    Merci de vos réponses
    Petits problèmes : * Je ne trouve pas le sujet récent :S
    * Je ne sait pas comment gérer l'événement Move
    Et pour fixer la fenêtre, bonne idée, mais je ne peut pas le faire car trop gênant

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    pour gérer l'évènement Move :
    - sélectionne la form dans le designer
    - va dans la fenêtre "Propriétés"
    - clic sur le bouton "Evènements" (l'éclair jaune)
    - double-clic sur Move
    Ca va générer une méthode vide pour l'évènement Move. Tu n'as plus qu'à ajouter le code qui vérifie et ajuste la position

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Août 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 15
    Par défaut
    Ok, j'ai fait ce que tu m'as dit, mais rien à changer :S
    Je dois mettre un code en plus ou autre ?
    Merci

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    ben fais voir ce que tu as mis dans le code de l'évènement Move

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Août 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 15
    Par défaut
    J'ai double cliquer comme tu m'as dit, et il a mit : MainFormMove

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par lolyest Voir le message
    J'ai double cliquer comme tu m'as dit, et il a mit : MainFormMove
    ben oui mais ça suffit pas !
    je t'ai dit plus haut:
    Tu n'as plus qu'à ajouter le code qui vérifie et ajuste la position
    Donc tu as quand même quelque chose à faire...

    Puisque tu n'as visiblement aucune connaissance en développement VB.NET, je te suggère d'aller faire un tour ici :
    http://plasserre.developpez.com/vsommair.htm

  11. #11
    Membre expérimenté Avatar de Faladin
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    333
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2007
    Messages : 333
    Par défaut


    Ben là faut mettre un code...

    Tu peux essayer quelquechose du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Form.Location.X = ValeurFixeX
    Form.Location.Y = ValeurFixeY
    Les valeurs fixes peuvent être des constantes ou variables. Par contre, j'ai l'impression que ta fenêtre va "scintiller" de cette façon, peut-être que TomLev à une meilleur idée...

    En passant, dans ma signature j'Ai un bon lien pour les débutants en VB...Je te le conseille...


  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Août 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 15
    Par défaut
    Ok, merci
    J'ai déjà regarder le guide, et je n'ai pas très bien compris enfaite par quoi commencer à apprendre :S
    Et le :
    Form.Location.X = ValeurFixeX
    Form.Location.Y = ValeurFixeY

    Je le met où ?

    PS : Désoler pour mon incompétence en la matière

  13. #13
    Membre expérimenté Avatar de Faladin
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    333
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2007
    Messages : 333
    Par défaut
    Dans l'événement move

  14. #14
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Faladin Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Form.Location.X = ValeurFixeX
    Form.Location.Y = ValeurFixeY
    Non, ce code ne fonctionnera pas, pour la raison expliquée dans ce post:
    http://www.developpez.net/forums/d59...e-width-label/
    (Faladin, tu as la mémoire courte )

    Il faut faire comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Form.Location = New Point(ValeurFixeX, ValeurFixeY)
    Pour vérifier que la fenêtre est toujours dans l'écran, il faut tester la position (Me.Location) et la taille (Me.Size) de la fenêtre par rapport aux limites de l'écran (Screen.PrimaryScreen.WorkingArea)
    Ce code est à placer dans l'évènement Move

  15. #15
    Membre expérimenté Avatar de Faladin
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    333
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2007
    Messages : 333
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Non, ce code ne fonctionnera pas, pour la raison expliquée dans ce post:
    http://www.developpez.net/forums/d59...e-width-label/
    (Faladin, tu as la mémoire courte )
    Ahaha, c'est la honte...

    Effectivement, j'ai deux excuses pour ma défense:

    1- J'ai appris VB en action et je n'ai pas des bases solides je crois, désolé...
    2- J'habite au Québec et il est très tôt, je sirote mon premier café, donner moi la clémence du peuple

  16. #16
    Membre averti
    Profil pro
    Inscrit en
    Août 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 15
    Par défaut
    Ok, merci
    je vais déjà approfondir mes connaissances en VB.NET ( Il y a du boulot ... )
    Mais c'est normal que ton code ne marche pas ? ( Form.Location = New Point(ValeurFixeX, ValeurFixeY) )

  17. #17
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par lolyest Voir le message
    Mais c'est normal que ton code ne marche pas ? ( Form.Location = New Point(ValeurFixeX, ValeurFixeY) )
    En fait c'est Me.Location et non Form.Location
    Et il faut avoir déclaré et initialisé ValeurFixeX et ValeurFixeY

    Citation Envoyé par Faladin Voir le message
    2- J'habite au Québec et il est très tôt, je sirote mon premier café, donner moi la clémence du peuple
    ah ok, ici c'est plutôt l'heure du 3e café (ou 4e, ou 5e, je perds le compte )

  18. #18
    Membre averti
    Profil pro
    Inscrit en
    Août 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 15
    Par défaut
    Comment on déclare ces variables ? ( si c'est bien une variable ... )
    Je veux dire qu'est-ce qu'il faut mettre à l'intérieur et placer le code ou ?

    Hum et je pense que c'est l'heure du 3eme

  19. #19
    Membre expérimenté Avatar de Faladin
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    333
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2007
    Messages : 333
    Par défaut
    Au tout début du code de ton formulaire (entre les premières déclarations de SUb/Function et le "Public Class NomDeTonFormulaire") , tu peux les déclarer soit en variable ou en constante:

    - en mode public (accessible de l'Extérieur donc tu pourrais les modifier)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Public VariableFixeX as integer = XXX
    Public VariableFixeY as integer = YYY
    - en mode private (local et non-accessible)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Private VariableFixeX as integer = XXX
    Private VariableFixeY as integer = YYY
    - en mode constante, donc "hard-coder" (en constante, VS ne fait que remplacer les endroits où ils retrouvent cette constante par la valeur voulu, c'est donc que pour rendre ton code plus clair!)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Const VariableFixeX as integer = XXX
    Const VariableFixeY as integer = YYY
    Par contre, en constante, je suis pas trop sûr de l'utilité ou non de Public ou Private, j'en connais pas assez en VB...

  20. #20
    Membre averti
    Profil pro
    Inscrit en
    Août 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 15
    Par défaut
    Ok, mais marche pas :S
    J'ai remplacer les XXX et YYY par les dimensions de mon form, et il me met sytax error lol

    Voila le code :
    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
    '
    ' Created by SharpDevelop.
    ' User: Alexandre
    ' Date: 26/07/2008
    ' Time: 19:27
    ' 
    ' To change this template use Tools | Options | Coding | Edit Standard Headers.
    '
    Public Partial Class MainForm
    	Public Sub New()
    		' The Me.InitializeComponent call is required for Windows Forms designer support.
    		Me.InitializeComponent()
     
    		'
    		' TODO : Add constructor code after InitializeComponents
     
    	End Sub
    		Private VariableFixeX as integer = 500
    		Public VariableFixeY as integer = 496
    		Me.Location = New Point(ValeurFixeX, ValeurFixeY)	
    End Class

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Ne pas sortir de l'écran
    Par Benjea dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 05/12/2012, 10h21
  2. Empêcher l'application de sortir de l'écran
    Par cyr42 dans le forum PyQt
    Réponses: 3
    Dernier message: 26/06/2012, 14h41
  3. Sortir d'un écran de veille en VBS
    Par glop - pas glop dans le forum VBScript
    Réponses: 3
    Dernier message: 28/11/2011, 15h58
  4. Centré constamment sans sortir de l'écran
    Par vulgate dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 07/09/2008, 14h28
  5. empêcher mainframe sortir de l'écran
    Par clem86 dans le forum MFC
    Réponses: 5
    Dernier message: 30/07/2008, 15h13

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