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

Composants VCL Delphi Discussion :

Erreur cannot focus a disabled or invisible window


Sujet :

Composants VCL Delphi

  1. #1
    Membre éprouvé
    Avatar de Andry
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2002
    Messages
    1 164
    Détails du profil
    Informations personnelles :
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 164
    Points : 1 181
    Points
    1 181
    Par défaut Erreur cannot focus a disabled or invisible window
    Bonsoir tous,

    Dans mon appli, à la sortie d'une Tedit, j'affiche une grille (Composant TGridViewXP de BergSoftware) qui est peuplé par des données via une requête.



    Dans l'evenement onDblclic de la grille j'ai mis ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    procedure TFrm_sav_e.Gr_articleDblClick(Sender: TObject);
    Var Rw  : integer;
    begin
      Rw                  := Gr_article.SelectedRow;
      Ed_dp_ar.Text       := Gr_Article.Cells[0,Rw];
      Ed_dp_design.Text   := Gr_Article.Cells[1,Rw];
      Ed_dp_pu.Text		    := Gr_Article.Cells[2,Rw];
      if Ed_dp_pu.CanFocus then Ed_dp_pu.SetFocus;
      Gr_Article.Hide;
    end;
    Mais après le double clic,
    il m'affiche cette mesage
    cannot focus a disabled or invisible window
    Qu'est ce qui cloche

    Merci
    On progresse .....

  2. #2
    Membre éclairé Avatar de tigunn
    Homme Profil pro
    Développeur de bug
    Inscrit en
    Janvier 2003
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de bug

    Informations forums :
    Inscription : Janvier 2003
    Messages : 608
    Points : 658
    Points
    658
    Par défaut
    salut Andry,
    le probleme pourrait il venir de la:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if Ed_dp_pu.CanFocus then Ed_dp_pu.SetFocus;
    tu lui demande dans un evt dblclick sur ta dbgrid(qui a alors le focus!!) si
    un autre composant a le focus?
    qu'est-ce que Ed_dp_pu?
    Le monde se divise en deux: ceux qui utilisent le tag et les autres.

  3. #3
    Teo
    Teo est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Août 2002
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 110
    Points : 111
    Points
    111
    Par défaut
    Ton "Ed_dp_pu" ne peut pas avoir le focus.
    Vérifie, s'il est pas invisible ou désactivé,
    ou si son parent ne l'est pas.
    .CanFocus merde qlq fois (j'ai jamais su quand)
    alors pour eviter les MsgBox
    moi je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Var Ch:String;
    Try
      If Control.CanFocus
      Then Control.SetFocus
    Except
      Try //Nouvelle Tentative
        Form.ActiveControl := Control;
        Ch := 'Ok';
      Except
        Ch := 'Ko'
      End;
      Application.Hint := Ch;//Pas util, mais ca evite le compil de me dire Ch jamais utilisé
    End;

  4. #4
    Membre éprouvé
    Avatar de Andry
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2002
    Messages
    1 164
    Détails du profil
    Informations personnelles :
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 164
    Points : 1 181
    Points
    1 181
    Par défaut
    Bon,
    Avant j'ai utilisé un StringGrid De la VCL, mais pour un peu de confort de manipulation, j'ai opté pour le TGridViewXP.
    J'ai changé le TGridViewXP avec un TAdvStringGrid de TMS, et le problème est résolu.

    Merci à vous.
    On progresse .....

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/10/2012, 09h15
  2. Réponses: 1
    Dernier message: 17/03/2009, 15h58
  3. Erreur "cannot create windows service for mysql" à l'installation
    Par nicolas2603 dans le forum Installation
    Réponses: 3
    Dernier message: 28/02/2009, 15h05
  4. Réponses: 13
    Dernier message: 14/10/2005, 11h01
  5. [CR7] Erreur CanNot initalize OLE
    Par elifqaoui dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 17/07/2003, 22h03

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