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

 Delphi Discussion :

placer curseur pour édit sur cellule d'un stringrid


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club Avatar de senv33
    Inscrit en
    Janvier 2010
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 53
    Points : 31
    Points
    31
    Par défaut placer curseur pour édit sur cellule d'un stringrid
    Bonjour,

    Le titre n'est peut être pas très explicite. Je voudrais que le curseur pour éditer du texte vienne se placer dans une cellule spécifique d'un stringGrid après un clic sur un bouton.

    Bonus? : En fait, la cellule spécifique concerne la dernière ligne ajoutée et une colonne qui sera toujours la même. Existe-t-il un moyen de connaître la dernière ligne ajoutée dans le stringGrid et de garder le curseur dessus sachant qu'à chaque ajout, la grille est triée alphabétiquement aussitôt après selon une colonne. (Donc la dernière ligne de la grille n'est pas forcément la dernière ligne ajoutée).

    Pouvez-vous m'aider s'il vous plaît ?


    Merci d'avance.

  2. #2
    Membre confirmé

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 184
    Points : 619
    Points
    619
    Par défaut
    Il faut utiliser les propriété Row et Col de la TStringGrid

    En leur affectant une valeur on se positionne sur une cellule donnée.
    Cela devrait répondre au point 1

  3. #3
    Nouveau membre du Club Avatar de senv33
    Inscrit en
    Janvier 2010
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 53
    Points : 31
    Points
    31
    Par défaut
    ok, merci pour ta réponse ! ça m'aide déjà

    est-ce que quelqu'un peut m'aider un peu pour la suite ? s'il vous plait ?

  4. #4
    Nouveau membre du Club Avatar de senv33
    Inscrit en
    Janvier 2010
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 53
    Points : 31
    Points
    31
    Par défaut
    Apparemment il faut utiliser les options goEditing et goAlwaysShowEditor...

    Mais comment dois-je m'y prendre pour que, lorsque je clique sur le bouton "ajouter" (qui ajoute une ligne dans le stringGrid), à la ligne ajoutée et à une colonne donnée, la cellule passe en mode édition ?

    J'ai essayé de rajouter le code suivant à la suite du code du bouton :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GrilleSaisieProjet.Options:=GrilleSaisieProjet.Options+[goEditing,goAlwaysShowEditor];
    mais je dois mal l'utiliser


    Pouvez-vous me guider s'il vous plaît ?

  5. #5
    Membre expert
    Avatar de Charly910
    Homme Profil pro
    Ingénieur TP
    Inscrit en
    Décembre 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur TP
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 346
    Points : 3 124
    Points
    3 124
    Par défaut
    Bonjour,

    essaye de voir si la dernière ligne de la grille n'est pas donnée par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       Row := StringGrid1.RowCount - 1  ;
    après ton tri.

    En plus tu as TopRow qui désigne la première ligne visible et VisibleRowCount qui donne le nombre de ligne à l'écran (cela te permet d'atteindre la dernière ligne affichée en bas de ta grille)

    A+

    Charly

  6. #6
    Nouveau membre du Club Avatar de senv33
    Inscrit en
    Janvier 2010
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 53
    Points : 31
    Points
    31
    Par défaut
    merci pour ta réponse mais je sais déjà comment avoir la dernière ligne de la grille, le problème c'est que j'aimerai récupérer la dernière ligne ajoutée, qui n'est pas forcément la même :/

  7. #7
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut

    C'est au niveau de ton tri qu'il faut que tu conserves le nouvel emplacement de la ligne insérée.

    Ou bien effectuer une recherche après tri de ta ligne si tu disposes d'un critère permettant de l'identifier.

    @+ Claudius

Discussions similaires

  1. Plusieurs fois Worksheet_SelectionChange pour Zoom sur Cellules
    Par oleev dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/01/2015, 00h50
  2. Réponses: 1
    Dernier message: 25/03/2013, 08h39
  3. [XL-2007] Tempo sur cellule pour sa validation
    Par NulenExcel77 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/10/2011, 09h30
  4. Click sur cellule pour affichage feuille
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 11/06/2008, 11h07
  5. Réponses: 5
    Dernier message: 24/05/2006, 20h22

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