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

C# Discussion :

Problème de don de focus


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 64
    Par défaut Problème de don de focus
    Bonjour, j'ai une méthode de clic sur un bouton qui effectue certains traitements et à la fin des traitements, la méthode doit donner le focus à un autre endroit.
    Or, les traitements se font correctement, mais le focus n'est pas donné où je veux et reste sur le bouton sur lequel j'ai cliqué...
    Voici le code de la méthode:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     private void btnNumeriserLot_Click(object sender, EventArgs e)
            {
                    tw.Acquire();
                    this.typedocCB.Enabled = false;
                    this.btnAnnul.Enabled = true;
                    this.locTB.Text = "";
                    this.locTB.Enabled = false;
                    this.btnParcourir.Enabled = false;
                    this.btnOK.Enabled = true;
                    btnOK.Focus();
                }
    Le btnOK ne reçoit pas le focus et celui-ci reste sur btnNumeriserLot alors que les traitements juste avant celui-ci se font sans problème. Je pense que le problème viendrait de la méthode tw.Acquire() qui a un traitement trop long... et qui pendant son traitement bloque tous les boutons...

    QUelqu'un saurait comment je peut attendre la fin du traitement de tw.Acquire() ?

    Merci d'avance

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Par défaut
    J'ai déjà eu des problèmes avec le focus sur les contrôles.

    En général, passer par Form.ActiveControl (propriété) fonctionne un peu mieux.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    this.ActiveControl = btnOk;
    La méthode est synchrone (et bloque donc l'interface) donc je ne comprends pas la question concernant "attendre la fin de tw.Acquire" puisque c'est exactement ce qu'il se passe.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 64
    Par défaut
    Merci bien pour la réponse et la résolution de mon soucis

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

Discussions similaires

  1. Problèmes avec la fonction Focus
    Par seanjohn42 dans le forum VB.NET
    Réponses: 6
    Dernier message: 03/02/2011, 11h22
  2. problème de perte de focus d'un combobox
    Par patoche.05 dans le forum C#
    Réponses: 4
    Dernier message: 23/04/2009, 13h29
  3. Problème de perte de focus
    Par capitaine dans le forum IHM
    Réponses: 4
    Dernier message: 09/06/2006, 16h48
  4. problème css avec :focus
    Par dervish dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 28/09/2004, 16h18
  5. [Creation composant visuel] Problème avec le focus
    Par Ingham dans le forum Composants VCL
    Réponses: 9
    Dernier message: 23/09/2004, 16h59

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