Einzelnen Beitrag anzeigen

generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.415 Beiträge
 
Delphi XE5 Professional
 

Re: VirtualStringTree und TTimer/JvThread/IdIcmpClient

  Alt 10. Jan 2006, 08:59
stell doch einfach um auf objekt orientierte programmierung?

Delphi-Quellcode:
type
  TEntry = class
  public
    Name,
    IPAdresse,
    PCName,
    Passwort: String;
    Online:Integer;

    Timer:TTimer;
    Thread:TJvThread;
    PingC:TIdIcmpClient;

    constructor Create();
    destructor Destroy();
  end;

constructor TEntry.Create();
begin
  // hier die anderne objs erzeugen
end;

destructor TEntry.Destroy();
begin
  // hier die obj zerstören
end;
im form create
   vst.nodedatasize:=sizeof(tentry); objekte in den vst:
Delphi-Quellcode:
var
  obj: TEntry;
begin
  obj:=TEntry.create;
  vst.addobject(nil, vst);
end;
im vst on free:
Delphi-Quellcode:
var
  obj: tentry;
begin
  obj:=tentry(vst.getnodedata(node)^);
  obj.free;
end;
im gettext vom vst:
Delphi-Quellcode:
var
  obj: tentry;
begin
  obj:=tentry(vst.getnodedata(node)^);
  case column of
    0: celltext:=obj.name;
    // hier die andern spalten
  end;
end;
das ist jetzt erstmal die vst optik gewesen.
programmtechnisch würde ich wohl einen timer verwenden für das ganze projekt und ein ping objekt.
diese beiden würden dann die liste durch eine iteration aktuell halten. (sicherstellen das der timer nicht 2 mal gleichzeitig ausgelöst wird)
oder den timer weg und einen thread (ist aber komplizierter)

ich denke du musst keine echtzeit anzeige haben, eine verzögerung von 5-10 sekunden sollte kein problem darstellen oder?
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat