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 :

selectionner une cellule dans un stringGrid


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 8
    Par défaut selectionner une cellule dans un stringGrid
    Je voudrai savoir si c'est possible de permettre à l'utilisateur de sélectionner une cellule dans un stringGrid et que son click change le texte de la cellule qui l'aura selectionnée. Et si cela est possible comment le fait on?
    merci.

  2. #2
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Par défaut
    Salut et Bienvenue sur les forums de Developpez.com ,

    Tu veux faire en sorte que lorsque l'utilisateur clic sur une cellule, que le texte de cette cellule change ?
    Le texte remplacé sera donc prédéfinie où c'est l'utilisateur qui y mettra son texte ?

    Tu peux regarde du coté de l'évènement OnSelectCell qui permet de récupérer la ligne et la colonne de la cellule cliquée.
    Sinon, si tu veux rendre éditable toutes les cellules, il faut mettre la propriété goEditing à true dans les options.

    Essaie de voir de ces deux cotés et reviens nous voir pour savoir si la réponse apportée est bien celle que tu attendais

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 8
    Par défaut
    En fait je voudrais que quand l’utilisateur click dans une cellule, cela génère un calcul, mais ce calcul est différent selon la cellule sélectionnée. Je pensais utiliser des if
    If « telle cellule est a été selectionnée » then
    Begin
    stringGrid.cells [« coordonnées de la cellule sélectionnée »] :=monresultat ;
    end ;

    mais je ne sais pas dans quelle procédure je le met celle de stringGridclik ?
    et comment je remplie mes «... » du dessus ??

  4. #4
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Par défaut
    Re,

    Voici un petit exemple simple.
    J'ai pris une grille de 5*5 (celle par défaut lorsque l'on dépose sur la form la TStringGrid)

    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
    28
    29
    30
    31
    32
    //Remplissage des données
    procedure TForm1.Button1Click(Sender: TObject);
    var
      i: Integer;
      j: Integer;
    begin
      for i := 1 to 4 do
      begin
        for j := 1 to 3 do
        begin
          StringGrid1.Cells[i,j]:=IntToStr(i*j);
        end;
      end;
    end;
     
    //Calcul des totaux de chaque colonnes
    procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;
      var CanSelect: Boolean);
    var
      i, myAddition : integer;
    begin
      myAddition := 0;
      case ARow of
        4 : begin
              for i:=1 to 3 do
              begin
                myAddition := myAddition + StrToInt(StringGrid1.Cells[ACol,i]);
              end;
              StringGrid1.Cells[ACol,ARow]:= IntToStr(myAddition);
            end;
      end;
    end;
    En espérant t'avoir aidé
    A+

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 8
    Par défaut
    nickel!!
    merci beaucoup!

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

Discussions similaires

  1. [XL-2003] selectionner une cellule dans une base à partir d'une variable.
    Par emilie10 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/07/2012, 09h13
  2. position d'une cellule dans un stringgrid
    Par jeffy783 dans le forum Composants VCL
    Réponses: 7
    Dernier message: 05/05/2009, 09h18
  3. Réponses: 3
    Dernier message: 06/06/2006, 17h38
  4. Editer ou non une cellule dans une stringGrid ?
    Par jamah dans le forum Composants VCL
    Réponses: 3
    Dernier message: 31/03/2006, 17h52
  5. Securiser une cellulle dans une stringGrid .
    Par jamah dans le forum Composants VCL
    Réponses: 2
    Dernier message: 25/01/2006, 15h38

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