Español
Bugs y vermeintliche

Startpaint DC&

 

Uwe
''Pascal''
Niemeier
Yo bins ya otra vez

Bin en dieses Problema gestoßen:
Wenn Yo en StartPaint  el Handle uno DeviceContext angebe, el keinem Dialogelement zugeordnet es, bekomme Yo en Einsatz el meisten Gafikbefehle el Meldung Dieser Befehl setzt una Ventana vorraus.
El entsprechenden API-Gegenstücke dejar se dagegen problemlos uso.
El gleiche Meldung gibts en efecto, si uno en el SpeicherBitmap dibujar voluntad y no creado ha ; sitzt como irgendwo ne entsprechende Sicherheitsüberprüfung en el Weg?
Denn si yo sólo una Control brauche, macht el Einsatz des DCs doch eigentlich no Sinn, porque Yo entonces igual el Control-Handle einsetzen kann.
KompilierenMarcaSeparación
window 10,10-500,500
 $H Windows.ph
------------------Geht
var dlg&=create(dialog,%hwnd,Test,100,100,300,300)
var DC1&=~GetDC(dlg&)
startpaint DC1&
textcolor 1,255
drawtext 40,0,Hallo
endpaint
------------------Geht nicht
var DC2&=~CreateCompatibleDC(%hdc)
startpaint DC2&
textcolor 1,255
drawtext 40,0,Hallo
endpaint
14.02.2009  
 




Matthias
Arlt
¡Hola Pascal,

Komisch, en me funktioniert eigentlich beides no así bastante zufriedenstellend. Yo verwende por lo tanto folgenden, bisher siempre zuverlässigen Workarround. Und verwende el DC esta eigentlich sólo fürs Neuzeichnen...
KompilierenMarcaSeparación
hdc&=~GetDC(dlg&)
hdc2&=~CreateCompatibleDC(hdc&)
b&=~CreateCompatibleBitmap(hdc&,width(dlg&),height(dlg&))
~SelectObject(hdc2&,b&)
startpaint dlg&
...
endpaint
~BitBlt(hdc2&,0,0,width(dlg&),height(dlg&),hdc&,0,0,$CC0020)
~DeleteObject(b&)
setautopaint 1
while...

if %wmPaint

    setautopaint 2	ansonsten permanentes neuzeichnen...
    ~BitBlt(hdc&,0,0,width(1&),height(1&),hdc2&,0,0,$CC0020)
    ~RedrawWindow(dlg&,0,0,$400+$1+$80+$100+$2)
    setautopaint 1

endif

wend

~DeleteDC(hdc2&)
~DeleteDC(hd
n class=s2>)
 
WinXP SP2, Win7 - XProfan 10/11/FreeProfan32 - Xpia
14.02.2009  
 




RGH
Uwe Pascal Niemeier
Yo bins ya otra vez
El gleiche Meldung gibts en efecto, si uno en el SpeicherBitmap dibujar voluntad y no creado ha ; sitzt como irgendwo ne entsprechende Sicherheitsüberprüfung en el Weg?


Sí, el Fehlermeldung taucht siempre entonces en, si la DC, en el qué suscrito voluntad se, valor 0 ha. In diesem speziellen Dall schläft STARTPAINT wohl fehl. (Auch después de STARTPAINT ha el Systemvariable %HDC el Werte des aktuellen DC. In diesem Fall es él tatsächlich 0.) Der Grund es wohl, dass STARTPAINT el Parámetro de No erkennbaren Gründen hier no como una DC erkennt, pero para una Fensterhandle hält.

Saludo
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
14.02.2009  
 




Uwe
''Pascal''
Niemeier
Hi Roland!

Yo hoffe doch, daß Si es usted el en Gelegenheit änderst?
Como ya he dicho, sonst sería el Möglichkeit el DC vorzugeben sí no Sinn hacer. Handles como Parámetro gabs sí ya largo.

SeeYou
Pascal
 
15.02.2009  
 



Morgen! Sombrero el Ganze auch algo así a tun, dass el hPicss no wirklich grosse Ausmasse haben dürfen?
 
15.02.2009  
 




RGH
Uwe Pascal Niemeier
Hi Roland!

Yo hoffe doch, daß Si es usted el en Gelegenheit änderst?
Como ya he dicho, sonst sería el Möglichkeit el DC vorzugeben sí no Sinn hacer. Handles como Parámetro gabs sí ya largo.

SeeYou
Pascal


Tja, si yo saber Yo como ändern kann. In el allermeisten Fällen funktioniert lo sí y una Devicekontext se como solcher erkannt (el heißt: el API GetObjType() erkennt en OBJ_DC).
Yo voluntad me aber una vez más anschauen y gucken, qué GetObjType() en diesem speziellen Fall meldet ...
Hintergrund: Como StartPaint en efecto Fensterhandles, Bitmaps, etc. transferencia voluntad puede, muss Yo sí sólo una vez ermitteln, qué como transferencia wurde. Dafür nutze Yo GetObjType().

Saludo
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
15.02.2009  
 




RGH
... y ya qué gefunden:

Lo son auch el Typ OBJ_MEMDC y se hier producido. Den Tuve probablemente el Aufbohren de STARTPAINT no en el Fokus (wohl el API-Documentación no weit genug runter gescrollt). Lo se en el nächsten Versión nachgerüstet!

Saludo
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
15.02.2009  
 




Jörg
Sellmeyer
en me funktioniert no!
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
04.11.2011  
 




RGH
Was funktioniert No en?
En me kommt el de Pascal angemeckerte Fehlermeldung no mehr!

Saludo
Roland
 
XProfan X2
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
08.11.2011  
 




Jörg
Sellmeyer
Sorry - Yo weiß lo auch nada mehr
Jetzt funktioniert's. Tal vez Tuve sólo el código falso verstanden
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
09.11.2011  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

12.252 Views

Untitledvor 0 min.
RudiB.16.05.2021
Jörg Sellmeyer01.06.2018
H.Brill23.09.2017
Wilfried22.05.2016
Más...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie