Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Zeichnen in Non-Client-Area unter Vista (https://www.delphipraxis.net/125128-zeichnen-non-client-area-unter-vista.html)

MasterEvil 2. Dez 2008 10:09

Re: Zeichnen in Non-Client-Area unter Vista
 
Hab es jetzt hinbekommen.
Allerdings lag das Problem an einer anderen Stelle.
Zeichnen im Non-Client-Bereich scheint ansich zu gehen, nur sich das Canvas-Handle per GetDCEx zu holen, schlägt dafür fehl bzw. bekommt man ein Canvas auf einen Breich auf dem man nicht zeichnen darf ...
Dies habe ich nun gegen ein einfaches GetWindowDC ersetzt.

Vorher:
Delphi-Quellcode:
ACanvas.Handle:=GetDCEx(Self.Handle,1,DCX_WINDOW or DCX_USESTYLE);
Jetzt:
Delphi-Quellcode:
ACanvas.Handle:=GetWindowDC(Self.Handle);

Weshalb die Vista-Funktionen nie S_OK sind, weiß ich allerdings nicht :(
Vielen Dank nochmal.
Gruß,
Steffen

EWeiss 25. Sep 2018 08:37

AW: Zeichnen in Non-Client-Area unter Vista
 
Ist zwar schon Assbach aber das kann nicht gehen.

Delphi-Quellcode:
  Policy : TDWMNCRENDERINGPOLICY;


muss
Delphi-Quellcode:
  Policy : LongInt;


sein.

gruss

TiGü 25. Sep 2018 09:28

AW: Zeichnen in Non-Client-Area unter Vista
 
Warum gräbst du sowas aus? :shock:

EWeiss 25. Sep 2018 10:56

AW: Zeichnen in Non-Client-Area unter Vista
 
Zitat:

Zitat von TiGü (Beitrag 1414069)
Warum gräbst du sowas aus? :shock:

Weil ich nach einer Funktion 'SetWindowCompositionAttribute' gesucht habe und dabei auf den Fehler gestoßen bin.
Ist es verboten einen Fehler zu melden wenn man ihn findet?

gruss


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:17 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