![]() |
LParam to TRect
Warum funktioniert das nicht bzw. wie geht es richtig.
rc := lP; es funktioniert nur wenn ich den Speicher vorher kopiere.
Delphi-Quellcode:
oder ist das so korrekt?
CopyMemory(@rc, Pointer(lP), sizeof(rc));
Delphi-Quellcode:
Die Daten kommen richtig an.
WM_MOVING:
begin Monitor := MonitorFromWindow(WinHandle, MONITOR_DEFAULTTONEAREST); CopyMemory(@rc, Pointer(lP), sizeof(rc)); if (rc.Top < 0) then rc.Top := 0; rc.Right := rc.Left + pMM^.ptMinTrackSize.X; rc.Bottom := rc.Top + pMM^.ptMinTrackSize.Y; tmi.cbSize := sizeof(tmi); if (GetMonitorInfo(Monitor, @tmi)) then begin if (rc.Bottom > tmi.rcWork.Bottom) then begin rc.Bottom := tmi.rcWork.Bottom; rc.Top := rc.Bottom - pMM^.ptMinTrackSize.Y; end; end; Result := 1; Exit; end; Aber eigentlich wollte ich LParam direkt an TRect (rc) übergeben. gruss |
AW: LParam to TRect
Speicher reservieren? Was CopyMen automatisch macht?
|
AW: LParam to TRect
Zitat:
gruss |
AW: LParam to TRect
Rat mal. :mrgreen: GetMem? Bin mir nicht sicher.
|
AW: LParam to TRect
Zitat:
Das hilft mir irgendwie nicht weiter.. Ich möchte nur wissen ob meine Methode mit CopyMemory korrekt ist. Wenn ja kann ich mir den versuch ersparen lP auf den TRect umzulegen wie auch immer das gehen mag. gruss |
AW: LParam to TRect
GetMem ist eine normale Funktion von Delphi. Mir fällt gerade die WinAPI Funktion nicht ein. Aber wenn es so funktioniert?
|
AW: LParam to TRect
AllocMem?
|
AW: LParam to TRect
Zitat:
Mir ging es halt nur darum wie ich rc := lp (also Lparam an den TRect zuweisen kann ohne CopyMemory). Ja Vielleicht etwas konfus meine Frage. gruss |
AW: LParam to TRect
Hach. Wo sind meine WinAPI Tage mit meinem WinAPI Wissen geblieben? :roll: Und bitte keinen Verweis auf meine eigenen Tutorials! :twisted:
|
AW: LParam to TRect
Delphi-Quellcode:
evtl.?
Rect := PRect(lParam)^
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:42 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