Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#60

AW: Bildschirmfoto knipst nicht alles

  Alt 1. Jun 2018, 00:36
Delphi-Quellcode:
      tbmp.Canvas.Lock;
       StretchBlt(tbmp.Canvas.Handle, 0, 0,
                  tbmp.Width, tbmp.Height,
                  hDCScreen, 0, 0,
                  tbmp.Width, tbmp.Height,
                  SRCCOPY or CAPTUREBLT);
       tbmp.Canvas.Unlock;
Lock, Unlock ist nicht von nöten.
StretchBlt auf der Basis auch nicht.

StretchBlt ist nur sinnvoll wenn der Source und Destination sich in der weite, Höhe unterscheiden.
So macht ein Stretch keinen sinn bei gleichen ausmaßen.
Du kannst hier also getrost BitBlt verwenden.

Zitat:
DeleteObject(hDCMem); // ich glaub das wär falsch oder?
Definitiv!
Denn ein HDC ist kein Object.
DeleteObject(hBmp);
wäre korrekt wenn du es nicht noch brauchen würdest.

Result := True;
Warum?
Du weist doch gar nicht ob StretchBlt erfolgreich war.
Wenn schon dann so.
Result := StretchBlt(bla, bla,

gruss

Geändert von EWeiss ( 1. Jun 2018 um 00:51 Uhr)
  Mit Zitat antworten Zitat