Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Lazarus (IDE) (https://www.delphipraxis.net/81-lazarus-ide/)
-   -   TImage.Refresh in Lazarus (https://www.delphipraxis.net/199742-timage-refresh-lazarus.html)

hoika 18. Feb 2019 20:11

AW: TImage.Refresh in Lazarus
 
Hallo,
vielleicht hilft dir das?
http://forum.lazarus.freepascal.org/...?topic=40433.0

matashen 19. Feb 2019 15:13

AW: TImage.Refresh in Lazarus
 
und evtl mal in die canvas.inc gucken, evtl hilft im Draw ein Changing und Changed wie im DrawFocusrect
Delphi-Quellcode:
Procedure TCanvas.Draw(X, Y: Integer; SrcGraphic: TGraphic);
var
  ARect: TRect;
begin
  if not Assigned(SrcGraphic) then exit;
  ARect:=Bounds(X,Y,SrcGraphic.Width,SrcGraphic.Height);
  StretchDraw(ARect,SrcGraphic);
end;

{-----------------------------------------------}
{--  TCanvas.DrawFocusRect --}
{-----------------------------------------------}
procedure TCanvas.DrawFocusRect(const ARect: TRect);
begin
  Changing;
  RequiredState([csHandleValid]);
  LCLIntf.DrawFocusRect(FHandle, ARect);
  Changed;
end;

Captain Albern 20. Feb 2019 14:56

AW: TImage.Refresh in Lazarus
 
Ich möchte nicht wieder voreilig sein, aber ich glaube, es funktioniert jetzt.

In Graphics.pp habe ich folgenden Hinweis gefunden:
Delphi-Quellcode:
property ScanLine[Row: Integer]: Pointer read GetScanLine; platform; // Use only when wrpped by a begin/endupdate
Und wenn ich jetzt das Kopieren in die Scanlines tatsächlich innerhalb von TBitmap.BeginUpdate und TBitmap.EndUpdate ausführe, wird das Bild aktualisiert ausgegeben.

Nebenbei habe ich Folgendes in win32object.inc gefunden :-D

Delphi-Quellcode:
procedure TWin32WidgetSet.DCRedraw(CanvasHandle: HDC);
begin
  // TODO: implement me!
end;
Vielen Dank nochmal für Eure Hilfe !

Gruß
C.A.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:26 Uhr.
Seite 2 von 2     12   

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