Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   XML (https://www.delphipraxis.net/46-xml/)
-   -   Delphi Probleme mit XML Tutorial (https://www.delphipraxis.net/13845-probleme-mit-xml-tutorial.html)

p0ke 28. Dez 2003 10:08

Re: Probleme mit XML Tutorial
 
Danke für die Tips
Ich selber arbeite nie mit with, nur wollte ich gerne das Tutorial so wies is durcharbeiten. Naja. Chak wird das jetzt sicher nochmal ordentlich machen :)


p0ke

CalganX 28. Dez 2003 10:20

Re: Probleme mit XML Tutorial
 
Hi,
Zitat:

Zitat von p0ke
Chak wird das jetzt sicher nochmal ordentlich machen :)

klar! Wobei mir das nie aufgefallen ist. Aber inzwischen sollte ich die Tücken von Delphi kennen. ;) Naja... man lernt halt nie aus. *g*

Chris

MathiasSimmack 28. Dez 2003 10:42

Re: Probleme mit XML Tutorial
 
Zitat:

Zitat von aps
Was habe ich vor nur wenigen Threads gesagt? Man solle auf die Verwendung von WITH verzichten (insbesondere auf WITH BEGIN END)!
Tu, was ich da gesagt habe, und es wird klappen.

:) Ich habe zwar deine Antwort im anderen Thread gelesen, aber ich hoffe du akzeptierst, wenn ich dir trotzdem nicht vorbehaltlos zustimmen kann. In diesem Fall gab´s ein ungünstiges Zusammenspiel zwischen dem TString und der Verwendung von "NAME" als Konstante.

Bisher ist mir so was (ich nenn´s mal einen Zufall) noch nicht passiert, darum verwende ich with immer, wenn ich was (wie du auch im anderen Thread geschrieben hast) verkürzen will.

DirkH 1. Feb 2004 15:09

Re: Probleme mit XML Tutorial
 
Erstmal vorweg: Ein super Tutorial. *respekt*

Eine genaue Lösung gab es bei diesem Problem noch nicht, oder? Oder hab ich das einfach nciht erlesen können ?
Habe nämlich das gleiche Problem ;)

Delphi-Quellcode:
procedure TMainForm.UpdateList;
  Const
    NAMES: array[0..8] of String = ('name', 'format', 'ton', 'anzmedien', 'bildqualität', 'tonqualität', 'gesamt', 'verliehen', 'comment');
  Var
    movies : IXMLDOMNodeList;
    subNode: IXMLDOMNode;
    i, j : integer;
  begin
    Movielist.Items.Clear;
    MovieList.Items.BeginUpdate;

    movies := xmlDoc.documentElement.selectNodes('movie');
    for i:=0 to movies.length -1 do
      begin
      subNode:=movies.item[i].selectSingleNode('id');
      MovieList.Items.Add;
      Movielist.Items[i].Caption := subNode.text;
      with Movielist.Items[i].SubItems do begin
          for j:=0 to length(NAMES)-1 do begin
            subNode := movies.item[i].selectSingleNode(Names[j]);
            if subNode <> nil then
              Add(subNode.text)
            else
              Add('');
            end;
        end;
    end;
    movielist.Items.EndUpdate;
  end;
Delphi-Quellcode:
 for j:=0 to length(NAMES)-1 do begin
! "[" erwartet, aber ")" gefunden, ist der Fehler.

Und wenn ich mit der Maus auf dem NAMES bleibe, dann gibt er mir

Code:
prop TStrings.Names: [Index:Integer]: String - classes.pas (518)
als info aus. Kann mir da jemand helfen ? Wäre sehr nett.

CalganX 1. Feb 2004 15:34

Re: Probleme mit XML Tutorial
 
Hi,
danke für das Lob.

Ja, das ist ein Fehler im Tutorial, aber derzeit komme ich nicht dazu das zu ändern.
Du musst folgende Schleife:
Delphi-Quellcode:
      with Movielist.Items[i].SubItems do begin
          for j:=0 to length(NAMES)-1 do begin
            subNode := movies.item[i].selectSingleNode(Names[j]);
            if subNode <> nil then
              Add(subNode.text)
            else
              Add('');
            end;
        end;
komplett ersetzen durch:
Delphi-Quellcode:
        for j:=0 to length(NAMES)-1 do begin
          subNode := movies.item[i].selectSingleNode(Names[j]);
          if subNode <> nil then
            Movielist.Items[i].SubItems.Add(subNode.text)
          else
            Movielist.Items[i].SubItems.Add('');
          end;
        end;
Chris

MathiasSimmack 2. Feb 2004 15:07

Re: Probleme mit XML Tutorial
 
@Chris: Das ist kein Fehler. Es ist, wie ich schon sagte, ein dummer Zufall durch die Verwendung von "with":
Zitat:

Zitat von MathiasSimmack
In diesem Fall gab´s ein ungünstiges Zusammenspiel zwischen dem TString und der Verwendung von "NAME" als Konstante.

Einen Fehler brauchst du dir selbst nicht vorwerfen (lassen). ;)

DirkH 5. Feb 2004 09:34

Re: Probleme mit XML Tutorial
 
Danke schön, komme da auch nun schon weiter. Das nächste Problem ist aber auch schon wieder aufgetreten.

Werde es aber in dem dazugehörigen Threat posten :wink: , wenn ich es nicht selbst auf die Reihe bekommen sollte


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:03 Uhr.
Seite 2 von 2     12   

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