AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Wait Animation
Thema durchsuchen
Ansicht
Themen-Optionen

Wait Animation

Ein Thema von EWeiss · begonnen am 14. Mär 2017 · letzter Beitrag vom 14. Apr 2017
Antwort Antwort
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#1

AW: Wait Animation

  Alt 16. Mär 2017, 18:35
Braucht sie nicht. Du bekommst das IStream-Interface von der Anwendung übergeben.

Das brauchst du im Endeffekt nur durchreichen an die entsprechende GDI+-Funktion.

In etwa so:

Delphi-Quellcode:
   :
    procedure StartStream(ParentHandle: HWND; WinHandle: HWND; stream:IStream SpeedDelay: Integer);
   :
Die GDI+ funktion sollte sich die Daten dann statt aus der Datei aus dem Stream holen.
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#2

AW: Wait Animation

  Alt 16. Mär 2017, 18:38
Braucht sie nicht. Du bekommst das IStream-Interface von der Anwendung übergeben.

Das brauchst du im Endeffekt nur durchreichen an die entsprechende GDI+-Funktion.

In etwa so:

Delphi-Quellcode:
   :
    procedure StartStream(ParentHandle: HWND; WinHandle: HWND; stream:IStream SpeedDelay: Integer);
   :
Die GDI+ funktion sollte sich die Daten dann statt aus der Datei aus dem Stream holen.
Ok.
Ich denke das einladen von der Ressource wird dann die Anwendung übernehmen und die übergibt lediglich den IStream
den ich in der DLL benötige um daraus das Img zu erstellen.
Korrekt?

Ok dann werde ich die Funktion so übernehmen.

gruss
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#3

AW: Wait Animation

  Alt 16. Mär 2017, 19:05
Neue Version mit dem IStream (ActiveX) hochgeladen.
Ich hoffe das es läuft habe es nicht getestet.

Laden von Spectragram siehe Shot der Ball.

gruss

Geändert von EWeiss (11. Jul 2019 um 15:46 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#4

AW: Wait Animation

  Alt 16. Mär 2017, 22:32
So..
Leider hat das letzte Archiv mit der Funktion GdipLoadImageFromStream nicht funktioniert.
Ich hatte vergessen den var Parameter zu addieren.

Delphi-Quellcode:
function GdipLoadImageFromStream(
  stream: IStream;
  var image: Cardinal
): GPSTATUS; stdcall; external LibGdiPlus;
Damit das jetzt alles funktioniert habe ich auch gleich eine PNG in die Ressource gepackt und die Funktion getestet.
Das 4 Image wird jetzt aus der Ressource geladen.

Delphi-Quellcode:
      4:
        LoadStream(1);
Delphi-Quellcode:
procedure TForm1.LoadStream(Index: Cardinal);
var
  ResStream: TResourceStream;
  adapter: IStream;
begin
  ResStream := TResourceStream.CreateFromID(hInstance, Index, RT_RCDATA);
  ResStream.Position := 0;
  adapter := TStreamAdapter.Create(ResStream);

  try
    Spinner := CTRL_SpinnerCreate;
    SpinnerHandle := Spinner.CreateWindow(Handle);
    Spinner.StartStream(Handle, SpinnerHandle, adapter, 30);
  finally
    ResStream.Free;
  end;
end;
sollte jetzt Funktionieren.
Bin jetzt aber nicht sicher ob ich den adapter auf Nil setzen sollte.
Kann man später noch machen sollte das nötig sein.

sorry für den Ärger

gruss

Geändert von EWeiss (16. Mär 2017 um 23:05 Uhr)
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Wait Animation

  Alt 17. Mär 2017, 10:14
Was für Ärger ?

Habs mir schonmal runtergeladen. Sobald ich die Komponente geupdated hab, stell ich as mal hier rein
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#6

AW: Wait Animation

  Alt 17. Mär 2017, 10:22
Was für Ärger ?
Ich meine das ich das Archiv wieder aktualisieren musste wegen meiner eigenen Dummheit.

Zitat:
Habs mir schonmal runtergeladen. Sobald ich die Komponente geupdated hab, stell ich as mal hier rein
Fein

gruss
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: Wait Animation

  Alt 17. Mär 2017, 10:42
Und hier schon mal eine Runde von mir

Ich musste zwar umstellen auf die Ansi-Api, weil mein System zu alt ist. Aber funktioniert soweit
Angehängte Dateien
Dateityp: zip Spinnercomp.zip (1,87 MB, 11x aufgerufen)
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
Antwort Antwort


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 19:46 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