AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Bild von IP-Webcam auslesen

Ein Thema von himitsu · begonnen am 1. Okt 2013 · letzter Beitrag vom 8. Apr 2024
 
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.590 Beiträge
 
Delphi 12 Athens
 
#7

AW: Bild von IP-Webcam auslesen

  Alt 1. Okt 2013, 12:59
Lasten- und Pflichtenheft ist gut ... "bau ma was ein, damit wir auch von einer webcam das bild in DMS bekommen"

Nja, da mach ich mal 3 Wochen Urlaub und schon schaltet wer die Kameras aus.


Aber zur Komponente.
Wenn du z.B. von TComponent erbst und den TThread nur als Unterkomponente laufen läßt, dann kann man diese Komponente auch nett auf der Form oder einem DatenModul ablegen und gemütlich über den OI die Events anhängen.
Bzw. das TThread.Execute ganz einfach über TThread.CreateAnonymousThread(...) startet, die Synchronisierung über TThread.Synchronize(nil, ...) schiebt und sich somit die komplette TThread-Instanz erspart.
(im Notfall kann ich's dir auch mal in wenigen Minütchen entsprechend umstellen)



PS: Den Mist mit dem TfrmMain.JPEGReceived hab ich auch schon erlebt.
grad erst vor paar Wochen, als ich meine Webcam schnell mal via CAPI reingebaut hatte.

Wusstest du, daß es theoretisch sowas gibt?
Delphi-Quellcode:
procedure TfrmMain.JPEGReceived(Sender: TObject; Data: TMemoryStream);
begin
  Image1.Picture.ForceType(TJPEGImage);
  Image1.Picture.Graphic.LoadFromStream(Data);
end;
Aber weil irgendein besch* Arsch diese Prozedur unbedingt als Private deklarieren mußte, sieht der Ersatz-Code praktisch so aus
Delphi-Quellcode:
procedure TfrmMain.JPEGReceived(Sender: TObject; Data: TMemoryStream);
var
  JPEG: TJPEGImage;
begin
  if not (Image1.Picture.Graphic is TJPEGImage) then begin
    JPEG := TJPEGImage.Create;
    try
      Image1.Picture.Assign(JPEG); // bzw. Image1.Picture.Graphic := JPEG;
    finally
      JPEG.Free;
    end;
  end;
  Image1.Picture.Graphic.LoadFromStream(Data);
end;
Oder eben so, wie bei dir.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
 


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 21:51 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