Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Change bei showmodal? (https://www.delphipraxis.net/110619-change-bei-showmodal.html)

okoeller 20. Mär 2008 21:53


Change bei showmodal?
 
Hallo,

wird bei
Delphi-Quellcode:
showmodal
einer Form grundsätzlich ein
Delphi-Quellcode:
change
Ereignis einer Komponente dieser Form abgefragt/aufgerufen ???
Wenn ja, läßt sich das verhindern ????

Oliver

mkinzler 20. Mär 2008 21:55

Re: Change bei showmodal?
 
Ja natürlich. Warum willst du das verhindern.

okoeller 20. Mär 2008 22:37

Re: Change bei showmodal?
 
Hallo mkinzler,

die change-methode verwende ich, um in einem Treeview den gewählten Knoten festzustellen.
Zuvor wird allerdings eine Combobox(1) ausgewertet, die zu diesem Zeitpunkt noch keinen Eintrag hat.
Vielleicht sollte ich hier besser mit einem Click-Ereignis arbeiten!?

Delphi-Quellcode:
procedure TFrmTexthilfe.tvProdukteChange(Sender: TObject; Node: TTreeNode);
begin
  FAnzeigeStatus := false;
  FrmTexthilfe.SetProduktGewaehlt(FrmTexthilfe.AktuellesProdukt);
end;
Delphi-Quellcode:
function TFrmTexthilfe.AktuellesProdukt: string;
var
  tNode : TTreenode;
begin
  if cbKategorie.ItemIndex > -1 then             <<<< - - (1)
  begin
  tNode:=tvProdukte.Selected ;
    if tNode.Level = 1  then
    begin
        result := tNode.Text;
    end;
  end else begin
    ShowMessage('Bitte wählen Sie zuerste ein Produkt aus.');
  end;
end;
Oliver

mkinzler 20. Mär 2008 22:42

Re: Change bei showmodal?
 
Ich sehe gerade nicht den Zusammenhang zur modalen Form. Du kannst aber vor dem modalen Anzeigen die Eventproperty temporär umlenken.

Die Muhkuh 20. Mär 2008 22:43

Re: Change bei showmodal?
 
Oder er arbeitet einfach mit OnClick und nicht mit OnChange, was ich sowieso für sinnvoller halte.

toms 20. Mär 2008 22:44

Re: Change bei showmodal?
 
Hallo

AktuellesProdukt hat keinen Rückgabewert, wenn nicht ausgewählt worden ist.
Du solltest am Anfang der Funktion Result := '' schreiben.

Un vor diesem Aufruf einen Test auf FrmTexthilfe.AktuellesProdukt <> '' machen:

Zitat:

FrmTexthilfe.SetProduktGewaehlt(FrmTexthilfe.Aktue llesProdukt);

okoeller 20. Mär 2008 22:57

Re: Change bei showmodal?
 
@Die Muhkuh/toms,

ich werd eure Vorschläge mal ausprobieren. Die sind glaube ich an dieser Stelle für mich zunächst brauchbarer.

@mkinzler,

Zitat:

vor dem modalen Anzeigen die Eventproperty temporär umlenken
das ist schon wieder Neuland für mich, da ich noch nicht so bewandert mit OOP bin, aber danke für den Hinweis.
Werde wohl erst mal den beiden anderen Vorschlägen nachgehen.

Oliver

mkinzler 20. Mär 2008 22:59

Re: Change bei showmodal?
 
Einfach die property .onChange auf Nil setzen. Und später dann wieder auf die gewünschte Methode

xZise 20. Mär 2008 23:47

Re: Change bei showmodal?
 
Zitat:

Zitat von Die Muhkuh
Oder er arbeitet einfach mit OnClick und nicht mit OnChange, was ich sowieso für sinnvoller halte.

Wieso ist das OnChange Ereigniss schlechter? Es ist sogar besser, da man hier wirklich alles mitbekommt und gleich den markieren Node hat.

MfG
xZise

Die Muhkuh 21. Mär 2008 00:13

Re: Change bei showmodal?
 
Zitat:

Zitat von xZise
Zitat:

Zitat von Die Muhkuh
Oder er arbeitet einfach mit OnClick und nicht mit OnChange, was ich sowieso für sinnvoller halte.

Wieso ist das OnChange Ereigniss schlechter? Es ist sogar besser, da man hier wirklich alles mitbekommt und gleich den markieren Node hat.

Ich ging davon aus, dass man das Produkt eig. anklicken muss, weswegen sich OnClick besser anbietet. Lasse mich gerne aber eines besseren belehren, ich kenne ja sein Programm nicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:24 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz