AGB  ·  Datenschutz  ·  Impressum  







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

Memo OnChange Procedure zuweisen??

Ein Thema von DelphiPeter · begonnen am 7. Feb 2009 · letzter Beitrag vom 8. Feb 2009
Antwort Antwort
Seite 1 von 3  1 23      
DelphiPeter

Registriert seit: 21. Dez 2007
Ort: Iserlohn
198 Beiträge
 
Delphi 2010 Professional
 
#1

Memo OnChange Procedure zuweisen??

  Alt 7. Feb 2009, 19:06
Hallo zusammen!

Ich erstelle ein Memo zur Laufzeit

Delphi-Quellcode:
...
var
  Memo: TMemo;
begin
  Memo := TMemo.Create(nil);
  
end;
...
Und jetzt möchte ich das OnChange Ereignis ausprogrammieren. Wie mache ich denn das? Stehe vielleicht auch einfach nur auf dem Schlauch.
Peter Majewski
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#2

Re: Memo OnChange Procedure zuweisen??

  Alt 7. Feb 2009, 19:07
Du erstellst einfach eine procedure mit der gleichen Signatur die eben die "echte" OnChange-Prozedur hat (also mit denselben Parametern).

Und dann kannst du die einfach mittels Memo.OnChange := MyProcedure zuweisen.

edit: haha, schneller als die zwei Top-"Spammer". Fehlt ja nur noch Luckie. http://fnse.de/S01/0RB.gif
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#3

Re: Memo OnChange Procedure zuweisen??

  Alt 7. Feb 2009, 19:08
Du brauchst eine Methode vom Typ TNotifyEvent, die kannst Du dann dem OnChange des Memos zuweisen.

[edit] *Pfüh* immer diese Sockenjäger [/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Memo OnChange Procedure zuweisen??

  Alt 7. Feb 2009, 19:08
Einfach durch Zuweisung einer Eventmethode mit der richtigen Signatur:
Memo.onChange := <Methodennamen>;
Markus Kinzler
  Mit Zitat antworten Zitat
DelphiPeter

Registriert seit: 21. Dez 2007
Ort: Iserlohn
198 Beiträge
 
Delphi 2010 Professional
 
#5

Re: Memo OnChange Procedure zuweisen??

  Alt 7. Feb 2009, 19:29
Also das hier geht nicht:

Memo.OnChange := MyProcedure

Was heißt den TNotifyEvent, muss ich da was in die Procedure schreiben? Sorry das ich mich so doof anstelle
Peter Majewski
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#6

Re: Memo OnChange Procedure zuweisen??

  Alt 7. Feb 2009, 19:31
wie sieht denn MyProcedure aus?

der Kopf sollte so aussehen:

procedure TForm1.MyProcedure(Sender: TObject); muss natürlich eine Methode des gleichen Forms sein

Gruß Frank
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#7

Re: Memo OnChange Procedure zuweisen??

  Alt 7. Feb 2009, 19:32
TNotifyEvent sieht so aus:
Delphi-Quellcode:
type TNotifyEvent = procedure(
  Sender: TObject
) of object;
Anwendbar also so:
Delphi-Quellcode:
procedure MyProc(Sender: TObject);
begin
  DoSomething;
end;

...

Memo.OnChange := MyProc;
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
 
Delphi 12 Athens
 
#8

Re: Memo OnChange Procedure zuweisen??

  Alt 7. Feb 2009, 19:34
Delphi-Quellcode:
type
  TMyForm = class(TForm)
    ...
  private
    procedure ShowMemoChange(Sender: TObject);
    ...
  end;

...


procedure TMyForm.ShowMemoChange(Sender: TObject);
begin
  ShowMessage('Inhalt des Memos hat sich geändert');
end;

...
begin
  Memo := TMemo.Create(nil);
  Memo.OnChange := ShowMemoChange;
end;
Probier das mal aus.

[edit] Ich poste gleich nichts mehr, pah [/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
DelphiPeter

Registriert seit: 21. Dez 2007
Ort: Iserlohn
198 Beiträge
 
Delphi 2010 Professional
 
#9

Re: Memo OnChange Procedure zuweisen??

  Alt 7. Feb 2009, 19:35
Ahh, ok, ich schaue mal nach, danke!
Peter Majewski
  Mit Zitat antworten Zitat
DelphiPeter

Registriert seit: 21. Dez 2007
Ort: Iserlohn
198 Beiträge
 
Delphi 2010 Professional
 
#10

Re: Memo OnChange Procedure zuweisen??

  Alt 7. Feb 2009, 19:41
Also, ich glaube das Problem liegt daran, das ich das alles in einer DLL versuche, die kein Formular hat.

Ich wollte es nun mal mit einer TStringlist versuchen, doch auch hier bekomme ich die Meldung

Zitat:
[DCC Fehler] ccl32.dpr(35): E2009 Inkompatible Typen: 'Methodenzeiger und reguläre Prozedur'
Meine onChange Procedure sieht so aus

Delphi-Quellcode:
procedure OnChange(Sender: TObject);
begin

end;
und meine Zuweisung so

Delphi-Quellcode:
Ausgabe := TStringlist.Create;
    Ausgabe.OnChange := OnChange;
Peter Majewski
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 14:00 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