Forum | | | | Julian Schmidt | Salut,
par cette Fil voudrais Je l' WinXP-Bug aus Screencapture[...] beheben.
Es handelt sich dabei um une Anzeige-faute quel sous WinXP auftritt. sous Fenêtre 7 & Co sieht on une noir eingefärbten Hintergrund et un weißes Steuerkreuz welches den Cursor verfolgt. sous WinXP ist rien trop voyons.
Def SetLayeredWindowAttributes(4) !"User32","SetLayeredWindowAttributes"
def SetWindowRgn(3) !"User32","SetWindowRgn"
def RectRgn(4) !"GDI32","CreateRectRgn"
Déclarer fenster&[], x&, posx&, posy&
Fenêtre Style 240+1024
Fenêtre %MaxX,%MaxY,0,0
Whileloop 2
fenster&[&loop]=Créer("Window",%hwnd,»,%MaxX,%MaxY,0,0)'fenster&[1] - Schwarze Blende
SetTransparent(fenster&[&loop],IF(&loop=1,55,20))'fenster&[2] - Durchsichtiger Klickschutz
SetWindowPos fenster&[&loop]=0,0 - %MaxX, %MaxY;-1
Endwhile
ShowCursor 0
WhileNot iskey(27)
Waitinput 10
posx&=CursorPos("X1")
posy&=CursorPos("Y1")
Début de peinture fenster&[1]
CLS 0
EndPaint
CutRgnDLG(fenster&[1],RectRgn(0,posy&,posx&,posy&+1),RectRgn(posx&+1,posy&,%MaxX,posy&+1),RectRgn(posx&,0,posx&+1,posy&),RectRgn(posx&,posy&+1,posx&+1,%MaxY))
CutRgnDLG(fenster&[2],RectRgn(0, 0, posx&, posy&),RectRgn(posx&+1, 0, %MaxX, posy&),RectRgn(0, posy&+1, posx&, %MaxY),RectRgn(posx&+1, posy&+1, %MaxX, %MaxY))
Endwhile
end
Proc SetTransparent
Paramètres Hwnd%, Perc%
Externe("User32","SetWindowLongA",Hwnd%, -20, Externe("User32","GetWindowLongA",Hwnd%,-20) | $80000)
SetLayeredWindowAttributes(Hwnd%, 0, (255 * Perc%) / 100, $2)
ENDPROC
Proc CutRgnDLG
Paramètres hdl&
Déclarer region&,wRgn&
wRgn&=RectRgn(0,0,width(hdl&)+100,height(hdl&)+100)
whileloop 2,%PCount
region&=@&(&loop)
Externe("GDI32","CombineRgn",wRgn&,region&,wrgn&,3)
DeleteObject region&
Endwhile
SetWindowRgn(hdl&, wRgn&, 1)
Retour wRgn&
ENDPROC
Proc WindowRect
Paramètres hdl&,Modus$
Modus$=Lower$(Modus$)
Déclarer x%, b#
Faible b#,16
Externe("User32", "GetWindowRect",hdl&,b#)
Cas @&(3)<>0 : Externe("User32","ScreenToClient",@&(3),b#) : Externe("User32","ScreenToClient",@&(3),b#+8)
Cas Modus$="breite" : x%=Long(b#,8)-Long(b#,0)
Cas Modus$="höhe" : x%=Long(b#,12)-Long(b#,4)
Cas Modus$="x1" : x%=Long(b#,0)
Cas Modus$="y1" : x%=Long(b#,4)
Cas Modus$="x2" : x%=Long(b#,8)
Cas Modus$="y2" : x%=Long(b#,12)
Dispose b#
Retour x%
ENDPROC
Proc CursorPos
Paramètres Modus$
Modus$=Lower$(Modus$)
Déclarer x%, mpos#
Faible mpos#,8
Externe("user32","GetCursorPos",mpos#)
Cas @&(2)<>0 : Externe("User32","ScreenToClient",@&(2),mpos#)
Cas Modus$="x1" : x%=long(mpos#,0)
Cas Modus$="y1" : x%=long(mpos#,4)
Cas Modus$="x2" : x%=IF(@&(2)<>0,WindowRect(@&(2),"Breite"),%maxx)-long(mpos#,0)
Cas Modus$="y2" : x%=IF(@&(2)<>02,WindowRect(@&(2),"Höhe"),%maxy)-long(mpos#,4)
Dispose mpos#
Retour x%
ENDPROC
LG
Julian |
| | | | |
| | | chez mir steht cela Thema ("nur") sur qui La liste de voeux. |
| | | | |
| | Julian Schmidt | je hoffe ici tut sich bientôt quelque chose. Sonst werde je qui Frage, dans den prochain Tagen, dans Pauls PC Forum reinstellen.... |
| | | | |
| | Andreas Miethe
| Na ensuite,
cela hat wohl quoi avec AERO trop 1faire, ist cela pas aktiv vois Du aussi sous Win7 NICHTS ! |
| | | XProfan X2Gruss Andreas ________ ________ ________ ________ _ Profan 3.3 - XProfanX2 Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher Homepage : [...] | 21.01.2013 ▲ |
| |
| | Julian Schmidt | hmmm....tu as droite! et woran pourrait cela liegen. |
| | | | |
| | Andreas Miethe
| faute trouvé !
ici liegt qui le chien begraben
Mach cela avec Dialogen ensuite klappt es.
|
| | | XProfan X2Gruss Andreas ________ ________ ________ ________ _ Profan 3.3 - XProfanX2 Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher Homepage : [...] | 22.01.2013 ▲ |
| |
| | Julian Schmidt | avec cela bekomme je aus irgendeinen Grund mais pas qui Titelleiste et Dicke cadre ausgeblendet. Hab Windowstyle 240+1024 eingestellt. je prends à cela Problem hängt avec SetWindowRgn zusammen....
|
| | | | |
| | Andreas Miethe
| | | | XProfan X2Gruss Andreas ________ ________ ________ ________ _ Profan 3.3 - XProfanX2 Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher Homepage : [...] | 23.01.2013 ▲ |
| |
| | Julian Schmidt | Hab je déjà auparavant. Verhält sich ähnlich. |
| | | | |
| | Julian Schmidt | | | | | |
| | | Daran Il se trouve pas,
qui Frage ist seulement trop allgemein gestellt bzw. qui Code en supplément zeigt zwar un Problem mais beschreibt ne...aucune konkretes Problem bzw. ist vlt. sogar trop umfangreich comme cela erkenntlich ist cela es um un bestimmtes Problem allez.
Beispielsweise sais je pour Andreas Miethes Hinweisen garnicht plus sur welchem Stand qui Text ist.
Mach doch la fois une Dreizeiler qui cela Problem aufzeigt et benenne cela konkrete Problem nochmals. |
| | | | |
| | Julian Schmidt | pas absolument un 3. Zeiler sollte mais ok son. je voudrais cela aucun Titelleiste et cadre eingeblendet volonté. Windowstyle scheint irgendwie pas trop marcher.
Def SetLayeredWindowAttributes(4) !"User32","SetLayeredWindowAttributes"
def SetWindowRgn(3) !"User32","SetWindowRgn"
def RectRgn(4) !"GDI32","CreateRectRgn"
cls
Var dlg&=Créer("Window",%hwnd,»,0,0,%MaxX,%MaxY)
SetTransparent(dlg&,50)
Showwindow(dlg&,1)
CutRgnDLG(dlg&,RectRgn(0,0,0,0))
WhileNot iskey(27)
Endwhile
end
Proc SetTransparent
Paramètres Hwnd%, Perc%
Externe("User32","SetWindowLongA",Hwnd%, -20, Externe("User32","GetWindowLongA",Hwnd%,-20) | $80000)
SetLayeredWindowAttributes(Hwnd%, 0, (255 * Perc%) / 100, $2)
ENDPROC
Proc CutRgnDLG
Paramètres hdl&
Déclarer region&,wRgn&
wRgn&=RectRgn(0,0,width(hdl&)+100,height(hdl&)+100)
whileloop 2,%PCount
region&=@&(&loop)
Externe("GDI32","CombineRgn",wRgn&,region&,wrgn&,3)
DeleteObject region&
Endwhile
SetWindowRgn(hdl&, wRgn&, 1)
Retour wRgn&
ENDPROC
|
| | | | |
|
répondreOptions du sujet | 23.523 Views |
Themeninformationencet Thema hat 3 participant: |