![]() |
HDC eines TImage ermitteln
Leider gibt es ja keine PicBox in Delphi.
Benötige aber das hdc vom TImage .. Ist die abfrage korrekt ? Wird mir damit das richtige hdc der Image zugewiesen ? Sorry wenn die frage etwas blöd klingt !
Delphi-Quellcode:
oder bekomme ich dieses nur über TBitmap ?
Var
PicMapDC : HDC; Begin PicMapDC := GetDC(picMap.Picture.Bitmap.Handle); End; wäre aber ein riesen umweg. gruß |
Re: weiss es jemand ? TImage
Ja. Also so ists wohl besser:
Delphi-Quellcode:
// Edit:
PicMapDC := picMap.Picture.Bitmap.Handle;
...ne halt Stopp. Fehler meiner seit's. So erhältst du ja nur das HBitmap... nim doch den DC vom
Delphi-Quellcode:
PicMapDC := picMap.Picture.Bitmap.Canvas.Handle;
|
Re: weiss es jemand ? TImage
Zitat:
@EWeiss: Könntest du dem Beitrag bitte einen Aussagekräftigen Titel geben? "weiss es jemand?..." ist auf keinen Fall aussagegräftig (zumal weiss im sinne von wissen falsch geschrieben ist) |
Re: weiss es jemand ? TImage
Zitat:
Ich benötige das hdc! Edit: Oder ist dies das Handle vom Device Contex? gruß |
Re: weiss es jemand ? TImage
TImage selbst hat kein eigenes HDC im herkömlichen Sinne eines Fensters da sich ein TImage nur auf das HDC seines Parents zeichnet.
DeviceContext = DC Und das Handle ist wie oben schon geschrieben ein HBitmap. Also das Handle des Bitmaps und nicht das Handle eines DC. |
Re: Aussagekräftiger Titel 'HDC eines TImage ermitteln'
Korrektur oben... *schwitz*
|
Re: Aussagekräftiger Titel 'HDC eines TImage ermitteln'
Geht doch so oder?
Delphi-Quellcode:
Aber Vorsicht!
Var
PicMapDC : HDC; Begin PicMapDC := PicMap.Picture.Bitmap.Canvas.Handle); End; Das DC ändert sich! |
Re: weiss es jemand ? TImage
Zitat:
Deshalb ja meine frage ob es über GetDC .. Das Handle vom Device Contex picMap.Picture.Bitmap.Handle in erfahrung zu bringen ist. gruß |
Re: Aussagekräftiger Titel 'HDC eines TImage ermitteln'
Zitat:
Muss erhalten bleiben solange bis aus diesen Bitmap alle benötigten ausschnitte des Bildes in ein neues TImages geblittet wurden. was ist nun der unterschied ? picMap.Picture.Bitmap.Handle PicMap.Picture.Bitmap.Canvas.Handle gruß |
Re: HDC eines TImage ermitteln
Habs gerade probiert, es funktioniert so.
Nur solltest Du vorher prüfen ob im Image ein Bitmap drinnen ist. Das DC bleibt (meine ich) gültig bis man es neu abfragt, oder andere Nachrichten verarbeitet werden. picMap.Picture.Bitmap.Handle <- Handle der Bitmap PicMap.Picture.Bitmap.Canvas.Handle <- Handle des mit dem Bitmap verbundenen DC |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:36 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