AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken TDBMEMO mit eigener Textanzeige
Thema durchsuchen
Ansicht
Themen-Optionen

TDBMEMO mit eigener Textanzeige

Ein Thema von bernhard_LA · begonnen am 23. Mär 2018 · letzter Beitrag vom 23. Mär 2018
Antwort Antwort
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.153 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: TDBMEMO mit eigener Textanzeige

  Alt 23. Mär 2018, 06:57
wenn ich von Tmemo ableite , wie bekommme ich mit, daß sich Z.B. der Datensatzzeiger geändert hat ?
welche Events muss ich hier implementieren ?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: TDBMEMO mit eigener Textanzeige

  Alt 23. Mär 2018, 07:19
Dann würde ich dies beim Lesen aus dem Datenbankfeldes machen (Event OnGetText von TField).
Markus Kinzler
  Mit Zitat antworten Zitat
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.153 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: TDBMEMO mit eigener Textanzeige

  Alt 23. Mär 2018, 08:08
kann ich Unterstützung bekommen damit meine Komponente auf Änderunegn in der Datenmenge richtig reagiert ?


unit Unit_DBmemoS;


interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB;



Delphi-Quellcode:
type
  TDBmemoS = class(TMemo)
  private

    { Private-Deklarationen }

    Fdatasource : Tdatasource ;

    FdataField : String;

    procedure Setdatasource(const Value: Tdatasource);
    procedure SetdataField(const Value: String);

  protected
    { Protected-Deklarationen }

  public
    { Public-Deklarationen }

  published
    { Published-Deklarationen }


  property datasoure : Tdatasource read Fdatasource write Setdatasource ;

  property dataField : String read FdataField write SetdataField ;
  end;

procedure Register;

implementation


procedure Register;
begin
  RegisterComponents('TOOLS', [ TDBmemoS]);
end;





procedure TDBmemoS.SetdataField(const Value: String);
begin
  FdataField := Value;
end;

procedure TDBmemoS.Setdatasource(const Value: Tdatasource);
begin
  Fdatasource := Value;
end;

end.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: TDBMEMO mit eigener Textanzeige

  Alt 23. Mär 2018, 08:12
Du brauchst eigentlich kein neues TDBMemo, sondern musst nur auf den Leseevent reagieren und dort die Entschlüsselung durchführen.
Markus Kinzler
  Mit Zitat antworten Zitat
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.153 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: TDBMEMO mit eigener Textanzeige

  Alt 23. Mär 2018, 08:18
wie müsste dies aussehen ? ich benötige ein paar Infos über die mögliche Implementierung
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: TDBMEMO mit eigener Textanzeige

  Alt 23. Mär 2018, 08:24
Im dataSet hast du ja Felder angelegt, diese haben jeweils einen den genannten Event OnGetText. Wenn du die Property mit einen Eventhandler belegst, dann wird dieser bei jedem Lesevorgang auf das DataSet (TDBMemo, TDBEDit, DataSet.FiledByName(), ...) aufgerufen und Du kannst dort das Ergebnis manipulieren ( z.B. entschlüsseln).

Delphi-Quellcode:
procedure <TDataModule>.FieldGetText(Sender: TField; var Text: string;
  DisplayText: Boolean);
begin
  Text := Entschluesseln( Sender.Value);
end;
Du kannst die Methode an alle Felder hängen.

Delphi-Quellcode:
for i:=0 to <DataSet>.Field.Count-1 do
begin
  <DataSet>.Field[i].onGetText := FieldGetText;
end;
Markus Kinzler

Geändert von mkinzler (23. Mär 2018 um 08:33 Uhr)
  Mit Zitat antworten Zitat
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.153 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: TDBMEMO mit eigener Textanzeige

  Alt 23. Mär 2018, 09:26
wäre dies dann ein class helper für TDataset ?
  Mit Zitat antworten Zitat
Antwort Antwort


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 06:17 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