AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi TListView, OnChanging-Event wird mehrmals aufgerufen

TListView, OnChanging-Event wird mehrmals aufgerufen

Ein Thema von jgehlen · begonnen am 4. Jan 2006 · letzter Beitrag vom 5. Jan 2006
 
jgehlen

Registriert seit: 26. Okt 2005
Ort: Bonn
11 Beiträge
 
Delphi XE5 Enterprise
 
#1

TListView, OnChanging-Event wird mehrmals aufgerufen

  Alt 4. Jan 2006, 13:37
Hi,

ich habe das Problem, dass das OnChanging-Event eines TListView mehrmals (3-4 mal, leider scheinbar nicht konstant) aufgerufen wird.

Ausgangssituation:
Ich will im OnChanging-Event eine Abfrage (MessageDlg) implementieren, ob der Eintrag, der verlassen werden soll gespeichert (Ja), nicht gespeichert (Nein) oder wieder zu diesem Eintrag zurückgekehrt werden soll (Abbrechen). Bei 'Abbrechen' setze ich AllowChange auf False.

Code:
Delphi-Quellcode:
 
procedure TForm1.ListView1Changing(Sender: TObject; Item: TListItem;
  Change: TItemChange; var AllowChange: Boolean);
begin
  AllowChange := True;
  // CheckBox1.Checked wird hier nur las Flag verwendet, ob sich in dem Eintrag etwas gändert hat
  If (Change = ctState) and CheckBox1.Checked then begin
    case MessageDlg('Änderungen speichern?',mtCustom,[mbYes,mbNo,mbCancel],0) of
      mrYes: begin
        // Speichern ...
        CheckBox1.Checked := False;
      end;
      mrNo: begin
        CheckBox1.Checked := False;
      end;
    else
      AllowChange := False;
    end;
  end;
Problem:
Da das das OnChanging-Event mehrmals durchlaufen wird wird bei der Auswahl von 'Abbrechen' im Dialog der Dialog bis zu vier mal angezeigt. Sehr unschön .

Irgendwer eine Idee?

Gruß
Jörg Gehlen
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz