AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ModalResult bei Doppelklick auf ListView

Ein Thema von TheMiller · begonnen am 8. Apr 2009 · letzter Beitrag vom 8. Apr 2009
 
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#1

ModalResult bei Doppelklick auf ListView

  Alt 8. Apr 2009, 11:39
Hallo,

ich stehe mal wieder vor einem Problem - besser gesagt vor einer AV.

Folgendes Szenario: Ich habe Formulare für all meine Projekte erstellt. Je nach dem, welches ich gerade brauche, binde ich in ein Proejkt ein bzw. erstelle es zur Laufzeit.

In diesem Fall geht es um ein Suchformular von Adressen. Ich zeige es mit ShowModal an, suche die Adresse und klicke auf einen der beiden Buttons. Der eine hat mrOK, der andere mrCancel.

Wenn ich nun eine Adresse auswähle und auf den Button (mrOK) klicke, dann wird alles übernommen.

Doch man kann in meinem Formular die Adresse auch per Doppelklick auf den Listeneintrag der ListView bestätigen. Nur dann bekomme ich keinen ModalResult-Wert zurück. Geht das generell nicht, oder mache ich nur was falsch?

Hier mal Quellcode:

Delphi-Quellcode:
var
  AdressForm: TfPJAdressSuche;
  re: TFrxRichView;
begin
  adressForm:=uPJAdresssuche.TfPJAdresssuche.Create(Self);
  try
    if (AdressForm.ShowModal = mrOK) then
    begin
      //u.s.w
    end;
  finally
    FreeAndNil(adressForm);
  end;
end;


//Das Adressformular:

procedure TfPJAdresssuche.PngBitBtn2Click(Sender: TObject);
begin
  SelectAddress;
end;

procedure TfPJAdresssuche.ListView1DblClick(Sender: TObject);
begin
  //Das war ein Trick, damit das ModalResult gesetzt wird. Geht aber nicht.
  PngBitBtn2.OnClick(Self);
end;

procedure TfPJAdresssuche.SelectAddress;
begin
  if (ListView1.Selected <> nil) then
  begin
    proceed:=True;
    Tel:=ListView1.Selected.SubItems.Strings[5];
    eMail:=ListView1.Selected.SubItems.Strings[6];
    Adressname:=ListView1.Selected.SubItems.Strings[2]+' '+ListView1.Selected.SubItems.Strings[1];
    Anrede:=ListView1.Selected.Caption;
    Firmenname:=ListView1.Selected.SubItems.Strings[0];
    Nachname:=ListView1.Selected.SubItems.Strings[1];
    Vorname:=ListView1.Selected.SubItems.Strings[2];
    Strasse:=ListView1.Selected.SubItems.Strings[3];
    PLZ:=ListView1.Selected.SubItems.Strings[4];
    Ort:=ListView1.Selected.SubItems.Strings[5];
    Telefon:=ListView1.Selected.SubItems.Strings[6];
    eMail:=ListView1.Selected.SubItems.Strings[7];
    aid:=Integer(ListView1.Selected.Data);
  end else
  begin
    MessageDLG('Es ist keine Adresse ausgewählt.', mtInformation, [mbOK], 0);
  end;
end;
Wenn ich einen Doppelklick in die Liste mache, passiert einfach nichts.

Bitte hiermit offiziell um Hilfe

Danke!
  Mit Zitat antworten Zitat
 


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:49 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