Delphi-PRAXiS
Seite 7 von 8   « Erste     567 8      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Spaltenweise auf TStringList zugreifen (https://www.delphipraxis.net/137708-spaltenweise-auf-tstringlist-zugreifen.html)

aaaaaaaaaa_10 30. Jul 2009 06:58

Re: Spaltenweise auf TStringList zugreifen
 
Da steht überall Prozess nicht verfügbar

mkinzler 30. Jul 2009 07:00

Re: Spaltenweise auf TStringList zugreifen
 
Vielleicht wäre es ratsam dich ein wenig von deinem konkreten Problem zu lösen und dzu versuchen die Grundlagen, die man dir versucht hier beizubringen zu verstehen.

aaaaaaaaaa_10 30. Jul 2009 07:09

Re: Spaltenweise auf TStringList zugreifen
 
Also ich habe jetzt mal bei
Delphi-Quellcode:
if Zeilenanzahl = Sek.Count-1 then exit;
einen Haltepunkt gesetzt und da ist self nil.

mkinzler 30. Jul 2009 07:12

Re: Spaltenweise auf TStringList zugreifen
 
Handelt es sich num um eine Methode oder eine freie Prozedur?

jaenicke 30. Jul 2009 07:12

Re: Spaltenweise auf TStringList zugreifen
 
Zitat:

Zitat von aaaaaaaaaa_10
Da steht überall Prozess nicht verfügbar

Dann ist das Programm noch nicht an dem Haltepunkt angekommen...

Dem was mkinzler geschrieben hat kann ich nur voll zustimmen...

Was Debuggen angeht:
http://www.delphipraxis.net/internal...t.php?p=326079
http://www.delphi-treff.de/delphi-ide/debugger/
http://www.delphi-treff.de/delphi-ide/haltepunkte/
http://www.delphi-treff.de/delphi-id...te-ausdruecke/
Allgemein:
http://www.christian-stelzmann.de/in...ials_crashkurs

// EDIT:
Ah, hat es doch geklappt mit dem Haltepunkt. :D
Ja, wenn da Self nil ist, dann besteht das Objekt an der Stelle nicht, dann hast du auch keinen Zugriff auf Properties. Das habe ich mir schon gedacht.

Das kann verschiedene Ursachen haben, z.B. dass das Objekt da wieder freigegeben / noch nicht erstellt wurde, etc.
Erstellst du das Formular manuell?
Die Methode wird durch einen Timer aufgerufen? Ist das im Objektinspektor zugewiesen oder rufst du da etwas manuell auf?

aaaaaaaaaa_10 30. Jul 2009 07:28

Re: Spaltenweise auf TStringList zugreifen
 
Zitat:

Die Methode wird durch einen Timer aufgerufen? Ist das im Objektinspektor zugewiesen oder rufst du da etwas manuell auf?
Den Timer rufe ich mit folgendem Code auf :
Delphi-Quellcode:
//Timer für ZehnMinDatei zur Laufzeit erstellen
  MyTimer2 := TTimer.Create(nil);
  MyTimer2.Enabled := True;
  MyTimer2.Interval := 3000;   // alle 3 Sekunden die 10MinDatei aktualisieren
  MyTimer2.OnTimer := MomFiles.ZehnMinTimerEvent;

jaenicke 30. Jul 2009 07:36

Re: Spaltenweise auf TStringList zugreifen
 
So etwas dachte ich mir schon fast, dass du da direkt auf eine bestimmte Instanz (MomFiles) zugreifst.

Kann es sein, dass du das in OnCreate von TMomFiles oder so durchführst? Dann (und generell, wenn das in TMomFiles passiert) lass das MomFiles. weg...
Oder dass du MomFiles manuell erzeugst und wieder freigibst?

aaaaaaaaaa_10 30. Jul 2009 07:43

Re: Spaltenweise auf TStringList zugreifen
 
Mein TMomFiles hat kein OnCreate.

Delphi-Quellcode:
 MyTimer2.OnTimer := ZehnMinTimerEvent;
Zitat:

Oder dass du MomFiles manuell erzeugst und wieder freigibst?
Das ist meine TMomFiles Klasse:
Delphi-Quellcode:
type
 
  TMomFiles=class(TForm)
  private
   FZeilenanzahl : integer;
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
    procedure DreiSekDateiErstellen;
    procedure ZehnMinDateiErstellen;
    procedure DreiSekDateiFuellen(const Filename: string);
    procedure ZehnMinDateiFuellen(const Filename: string);
    procedure DreiSekTimerEvent(Sender: TObject);
    procedure ZehnMinTimerEvent(Sender: TObject);
    procedure WerteBerechnen;
    property Zeilenanzahl: Integer Read FZeilenanzahl Write FZeilenanzahl;
  end;

jaenicke 30. Jul 2009 07:46

Re: Spaltenweise auf TStringList zugreifen
 
Ja, aber das meinte ich nicht. Erstellst du MomFiles manuell oder wird das Formular automatisch von Delphi erstellt?

Und wo wird der Timer erstellt?

aaaaaaaaaa_10 30. Jul 2009 07:48

Re: Spaltenweise auf TStringList zugreifen
 
Der Timer wird in
Delphi-Quellcode:
procedure TMomFiles.DreiSekDateiFuellen(const Filename: string);
erzeugt.
Ich erstelle es nicht,denke ich. Zumindestens nicht bewusst. :pale:


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:30 Uhr.
Seite 7 von 8   « Erste     567 8      

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