| |
|
|
Thomas Freier | Kann uno verhindern, dass el Button en Hover oder después de el Clic bajo XP a W7 ser Aussehen verändert? |
|
|
| |
|
|
|
Jörg Sellmeyer | verhindern, daß él ser Aussehen no verändert? Doppelte Verneinung Absicht? Irgendwie verstehe Yo el Cuestión nada... |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 06.06.2010 ▲ |
|
|
|
|
Thomas Freier | @Jörg, stimmt, war zuviel. Also en Hover kein Fabumschlag y después de Clic una Punktrahmen. El Alternative es natürlich una Bmp y Abfrage wo una Clic en lugar de fand. |
|
|
| |
|
|
|
Rolf Koch | Wegen el Punkterahmen: Tal vez (sólo una banale Concepto) una unsichtbaren funktionslosen Button redactar y después de Clic dummymässig darauf el Focus verlegen? Siehste, así qué hay bajo Windows 7 no mehr (ekliger Punktrahmen) |
|
|
| |
|
|
|
ByteAttack | Naja. Entweder via Picture una eigenen Button redactar, oder simplemente SKControl [...] benutzen. |
|
|
| |
|
|
|
| Thomas Freier, Beitrag=57377, Zeitpunkt=06.06.2010
Kann uno verhindern, dass el Button en Hover oder después de el Clic bajo XP a W7 ser Aussehen verändert?
Hola Tomás,
después de EnableWindow button&,0 .
Oder solch hässlicher Konstrukt: KompilierenMarcaSeparación {$cleq}
cls
long myButton=createMySonderButton(hWnd,"Hallo Welt",10,10,100,100)
whilenot key
waitInput
case clicked(myButton) : messageBox "","",0
wend
deleteObject getWindowLong(myButton,gwl_userData)
end
proc createMySonderButton(long parent,string text,long x,y,xx,yy)
long myButton=create("button",parent,text,x,y,xx,yy)
mcls xx,yy
startPaint myButton
copyBmpToMem 0,0 - xx,yy > 0,0
endPaint
long myHPic=create("hNewPic",xx,yy,0)
startPaint myHPic
mCopyBmp 0,0 - xx,yy > 0,0;0
endPaint
setWindowLong(myButton,gwl_userData,myHPic)
subClass myButton,true
return myButton
endproc
subClassProc
if subClassMessage(myButton,wm_paint)
set("winProc",0)
startPaint myButton
drawPic getWindowLong(myButton,gwl_userData),0,0;0
endPaint
validateRect(myButton,0)
return 1
endif
ENDPROC
Einfach ists imho no posible. ^ ^ KompilierenMarcaSeparación $H windows.ph
cls
var myButton&=createMySonderButton(%hWnd,"Hallo Welt",10,10,100,100)
whilenot %key
waitInput
caso clicked(myButton&) : messageBox "","",0
wend
deleteObject ~getWindowLong(myButton&,~gwl_userData)
end
proc createMySonderButton
parámetros parent&,texto$,x&,y&,xx&,yy&
var myButton&=create("button",parent&,texto$,x&,y&,xx&,yy&)
mcls xx&,yy&
startPaint myButton&
copyBmpToMem 0,0 - xx&,yy& > 0,0
endPaint
var myHPic&=create("hNewPic",xx&,yy&,0)
startPaint myHPic&
mCopyBmp 0,0 - xx&,yy& > 0,0;0
endPaint
~setWindowLong(myButton&,~gwl_userData,myHPic&)
subClass myButton&,1
volver myButton&
ENDPROC
subClassProc
if subClassMessage(myButton&,15)//wm_paint
set("winProc",0)
startPaint myButton&
drawPic ~getWindowLong(myButton&,~gwl_userData),0,0;0
endPaint
~validateRect(myButton&,0)
volver 1
endif
ENDPROC
Pero "Murx" zumindest z.B. porque el Control sólo korrekt adecuado se si sichbar (no verdeckt) _erzeugt wurde.
Für así einfache Spielereien aber vlt. ausreichend - Yo sería wohl más (como ya vorgeschlagen) una Mapa de bits(-Static) nutzen en lugar de solch Konstrukt. ^ ^ |
|
|
| |
|
|
|
ByteAttack | Hier veces una einfaches Ejemplo uno Hover-Button bajo XProfan: KompilierenMarcaSeparaciónUSERMESSAGES 16
Declare appexit%,Button&,Hover&
Set("TrueColor",1)
WindowStyle 26
WindowTitle "Hover-Button"
Window ((%maxX/2)-320),((%maxY/2)-240)-640,480
Lade Button
Button&=Create("HPic",-1,$ProgDir+"button_a.bmp")
Lade HoverButton
Hover&=Create("HPic",-1,$ProgDir+"button_b.bmp")
Zeichne Button
DrawPic Button&,10,10;0
WhileNot appexit%
GetMessage
Case %Umessage=16:appexit%=1
if Mouse(10,10-135,50) Wenn MouseOver Button
DrawPic Hover&,10,10;0 Zeichne Hover
While Mouse(10,10-135,50)
Warten auf Mausereigniss wenn MouseOver Button
EndWhile
DrawPic Button&,10,10;0 MouseOut
endif
EndWhile
DeleteObject Button&
DeleteObject Hover&
end
Ejemplo en el Anhang |
|
|
| |
|
|
|
Paul Glatz | KompilierenMarcaSeparacióncls
var myButton&=Button(%hWnd,"Hallo Welt",10,10,100,100)
whilenot %key
waitInput
case clicked(myButton&) : messageBox "","",0
wend
end
proc Button
parameters parent&,text$,x&,y&,xx&,yy&
var myButton&=create("button",parent&,text$,x&,y&,xx&,yy&)
mcls xx& + 2,yy& + 2
startPaint myButton&
copyBmpToMem 0,0 - xx&,yy& > 0,0
endPaint
var myHPic&=create("hNewPic",xx&,yy&,0)
startPaint myHPic&
mCopyBmp 0,0 - xx&,yy& > 0,0;0
endPaint
destroyWINDOW(mybutton&)
mybutton& = Create("PicButton",parent&,myHPic&,x&,y&,xx& + 1,yy& + 1)
deleteObject myHPic&
return myButton&
ENDPROC
|
|
|
| |
|
|
|
Thomas Freier | Gracias para el Hinweise. Como el SKControl ohnehin en el Programa en el Einsatz es, war lo el geringste Aufwand una SKCtrl_CreateUserButton einzusetzen. |
|
|
| |
|
|