Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Vst Editieren (https://www.delphipraxis.net/155647-vst-editieren.html)

youuu 2. Nov 2010 12:31

Vst Editieren
 
Hi,

ich möchte mein Vst vom Benutzer Editieren lassen.
Nun habe ich das Problem, das der Text nicht angenommen wird.

Ok nach etwas Googlen fand ich das OnNewText Ereignis.

Nur klappt es nicht mit dem Bespiel welches ich gefunden habe.

Delphi-Quellcode:
procedure Tfrm_History.VstHistoryNewText(Sender: TBaseVirtualTree;
  Node: PVirtualNode; Column: TColumnIndex; NewText: string);
var
  History: THistory;
begin
    History:= THistory(VstHistory.GetNodeData(node)^ ); <--- editiert
    History.txt[Column-1]:= NewText;         <--- der linken Seite kann nichts zugewiesen werden
end;

mkinzler 2. Nov 2010 12:40

AW: Vst Editieren
 
Implementiere einen Editor

youuu 2. Nov 2010 12:42

AW: Vst Editieren
 
Wie?

DeddyH 2. Nov 2010 12:43

AW: Vst Editieren
 
Wie ist denn THistory deklariert?

youuu 2. Nov 2010 12:47

AW: Vst Editieren
 
Delphi-Quellcode:
type
  THistory = class

  private
    Fid: string;
    Fkd: string;
    Ftxt: string;
    Fdate: string;
    Fbearbeiter: string;
  public
    property kd: string read Fkd write Fkd;
    property txt: string read Ftxt write Ftxt;
    property date: string read Fdate;
    property id: string read Fid write Fid;
    property bearbeiter: string read Fbearbeiter write Fbearbeiter;

    function deleteHistory(id: string): Boolean;

    procedure UpdateHistory;
    procedure InsertHistory;
  end;

DeddyH 2. Nov 2010 12:50

AW: Vst Editieren
 
Du versuchst einen String in einen Char zu schreiben?

youuu 2. Nov 2010 12:52

AW: Vst Editieren
 
Ich möchte lediglich ein Editbares Vst haben.
Wo schreibe ich dort einen String in einen Char?

DeddyH 2. Nov 2010 12:55

AW: Vst Editieren
 
Zitat:

Delphi-Quellcode:
History.txt[Column-1]:= NewText;

txt ist eine String-Property, wenn ich das richtig gesehen habe.

youuu 2. Nov 2010 13:00

AW: Vst Editieren
 
ja richtig und "newText" doch auch?

DeddyH 2. Nov 2010 13:04

AW: Vst Editieren
 
Ja eben, ein einzelnes Element eines String ist nunmal ein Char, da geht kein String rein.

youuu 2. Nov 2010 13:04

AW: Vst Editieren
 
Dann die Frage, wie löse ich das am besten im OnNewText?

DeddyH 2. Nov 2010 13:08

AW: Vst Editieren
 
Dumme Frage: was willst Du eigentlich machen?

youuu 2. Nov 2010 13:12

AW: Vst Editieren
 
Der benutzer soll bei klick auf die Vst Spalte, den Eintrag ändern.
Das klappt auch, nur wird die Änderung noch nicht übernommen, ich habe raus bekommen, das man das im OnNewText Ereignis eintragen muss, nur wie?

DeddyH 2. Nov 2010 13:20

AW: Vst Editieren
 
Sehe ich das richtig, dass das 5 Spalten sind? Dann könntest Du z.B. in einer case-Abfrage die Spalte ermitteln und die zugehörige Property ändern. Ungetestet:
Delphi-Quellcode:
procedure Tfrm_History.VstHistoryNewText(Sender: TBaseVirtualTree;
  Node: PVirtualNode; Column: TColumnIndex; NewText: string);
var
  History: THistory;
begin
    History:= THistory(VstHistory.GetNodeData(node)^ ); <--- editiert
    case Column of
      0: History.kd := NewText;
      1: History.txt := NewText;
      2: History.date := NewText;
      3: History.id := NewText;
      4: History.bearbeiter:= NewText;
   end;
end;

youuu 2. Nov 2010 13:24

AW: Vst Editieren
 
Super, klappte


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:00 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