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 :

DELPHI 2010 - Listview


Sujet :

Composants VCL Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2003
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 21
    Par défaut DELPHI 2010 - Listview
    Bonjour,

    j'ai un soucis à l'utilisation d'un listview. Ce dernir est en mode vsreport. J'ai trois colonnes (on va dire 1, 2 et 3).
    Je voudrais déclencher l'affiche d'infos dans un listbox lorsque l'ituilisateur clique sur une ligne de la listview.
    Pour cela j'ai implémenter dans l'évenement ListView1Click(Sender: TObject); ce que je veux.

    Le pb est : si on clique dans la première colonne (n'importe quelle ligne) tout va bien.
    En revanche si on clique dans les colonnes 2 ou 3, plantage avec message : ---------------------------
    Notification des exceptions du débogueur
    ---------------------------
    Le projet Allocine.exe a déclenché la classe d'exception EAccessViolation avec le message 'Violation d'accès à l'adresse 00566124 dans le module 'Allocine.exe'. Lecture de l'adresse 057183A8'.
    ---------------------------
    Arrêter Continuer Aide
    ---------------------------

    Voilà, si quelqu'un peut m'aider.
    Perso je voudrais que quelque soit la colonne cliquée, la listview comprenne que l'on veut la ligne correspondante.

    Merci pour votre aide.

  2. #2
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 938
    Billets dans le blog
    6
    Par défaut
    Quel est le code du TListView.OnClick ?
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  3. #3
    Membre averti
    Inscrit en
    Mars 2003
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 21
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    i:=filmselect;
     if listview1.SelCount>0 then begin i:=listview1.Selected.Index; filmSelect:=i;bitbtn1.Enabled:=true;
                            // else listview1.ItemIndex:=filmselect;
                            end
                            else bitbtn1.Enabled:=false;
     
     if High(ListeFilmsAClasser2[i].tabfilms)>=0 then
     begin
     listbox1.Clear;
      for j:=0 to High(ListeFilmsAClasser2[i].tabfilms) do listbox1.ITEMS.add('');
     
     end
     else listbox1.Items.Clear;
    J'ai commenté la ligne else.
    Du coup cela ne plante plus. En fait je ne pensais pas que le fait d'addresser itemindex refaisait rentrer dans cet evenement. Du coup cela provocait une erreur sur la ligne high(listefilmsaclasser )...

    Je pense que cela venait de là.

    Mais bon, moi perso j'aurais bien voulu que lorsque l'utilisateur clique sur la deuxième colonne cela fasse comme sur le première colonne, que l'item soit sélectionné.

    Merci pour votre aide.

Discussions similaires

  1. Delphi 2010 disponible!
    Par nostroyo dans le forum EDI
    Réponses: 71
    Dernier message: 06/10/2010, 09h16
  2. Réponses: 17
    Dernier message: 12/02/2010, 09h43
  3. Delphi 2010 disponible!
    Par nostroyo dans le forum Actualités
    Réponses: 32
    Dernier message: 29/08/2009, 15h51

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