![]() |
AW: DSharp - Data bindings, MVVM und mehr für Delphi 2010 und höher
Habe gerade festgestellt, dass die DSharp-Multicast Events nun auch anonyme Methoden unterstützen.
:thumb: |
AW: DSharp - Data bindings, MVVM und mehr für Delphi 2010 und höher
Hallo Stevie!
Ich bekomme folgenden Fehler, wenn ich ein Multicast Event in einem Multicast Event auslöse. Dieser Fehler tritt nur bei anonymen Methoden und nicht bei Methodenzeigern auf. Exception: First chance exception at $746C23CC. Exception class $C0000092 with message 'floating point stack check at 0x746c23cc'. Process Project1.exe (2052)
Delphi-Quellcode:
{$M+}
TEventTest = reference to procedure; {$M-} TForm1 = class(TForm) Button1: TButton; Memo1: TMemo; procedure Button1Click(Sender: TObject); private _EventTest1 : Event<TEventTest>; _EventTest2 : Event<TEventTest>; procedure ProcessEventTest1; procedure ProcessEventTest2; function GeteventTest1: Event<TEventTest>; function GeteventTest2: Event<TEventTest>; property EventTest1: Event<TEventtest> read GetEventTest1; property EventTest2: Event<TEventtest> read GetEventTest2; public end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin Self.EventTest1.Add(Self.ProcessEventTest1); Self.EventTest2.Add(Self.ProcessEventTest2); _EventTest1.Invoke(); end; procedure TForm1.ProcessEventTest1; begin _EventTest2.Invoke(); <- hier end; procedure TForm1.ProcessEventTest2; begin // end; function TForm1.GetEventTest1: Event<TEventTest>; begin Result := _EventTest1.EventHandler; end; function TForm1.GetEventTest2: Event<TEventTest>; begin Result := _EventTest2.EventHandler; end; end. |
AW: DSharp - Data bindings, MVVM und mehr für Delphi 2010 und höher
Fix commited - ich hätte auf
![]() Ein Hinweis noch: Du solltest event properties immer als IEvent<T> definieren. |
AW: DSharp - Data bindings, MVVM und mehr für Delphi 2010 und höher
Zitat:
|
AW: DSharp - Data bindings, MVVM und mehr für Delphi 2010 und höher
Hallo,
Ich habe mir gerade das VirtualTreeViewSample von DSharp angeschaut und wollte etwas ähnliches mit einem TcxGrid von DevExpress nachbauen. Daher meine Frage: Funktioniert der GridViewPresenter noch nicht oder habe ich die Units einfach nicht richtig eingebunden? Ich bekomme beim Kompilieren nämlich einen Fehler dass cxTL nicht gefunden wird. Mfg. pHL |
AW: DSharp - Data bindings, MVVM und mehr für Delphi 2010 und höher
Zitat:
In dem Fall, schmeiß die DSharp.DevExpress.TreeListPresenter.pas aus dem Package und passe die DSharp.DevExpress.Designtime.pas entsprechend an. Edit: Auch die cxTreeList aus der requires des Packages nehmen. |
AW: DSharp - Data bindings, MVVM und mehr für Delphi 2010 und höher
Danke schonmal, ich habe einen TcxTreeView, keine Ahnung ob das nun zur Quantum Treelist gehört :D habe die Komponenten
noch nicht lange. Ansonsten mache ich es so. Sollte der GridViewPresenter eine visuelle Komponente sein? Wenn ja dann habe ich einen Fehler beim installieren gemacht. Mfg. |
AW: DSharp - Data bindings, MVVM und mehr für Delphi 2010 und höher
Zitat:
Aber ich sehe gerade, dass ich das Package mit den DevExpress Presentern gar nicht commited habe :lol: Werd ich morgen mal machen |
AW: DSharp - Data bindings, MVVM und mehr für Delphi 2010 und höher
Alles klar :) dankeschön, dann passe ich das Package an dann sollts laufen.
Mfg. pHL |
AW: DSharp - Data bindings, MVVM und mehr für Delphi 2010 und höher
Hallo Stefan,
folgender Code löst eine Exception aus:
Delphi-Quellcode:
Das Problem liegt an Int64.
type
{$M+} TEventTest = reference to procedure(const AValue: Int64); {$M-} TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private _EventTest : Event<TEventTest>; public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin _EventTest.EventHandler.Add ( procedure(const AValue: Int64) begin ShowMessage(IntToStr(AValue)); end ); _EventTest.EventHandler.Invoke(1); end; Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:42 Uhr. |
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-2025 by Thomas Breitkreuz