| |
|
|
| Mauscursor Changement je pour Contrôle, avec diesem Code peux chaque Contrôle un eigener Cursor zugeordnet volonté.
KompilierenMarqueSéparationDEF ASetClassLong(3) ! User32,SetClassLongA
Def ALoadCursor(2) !USER32,LoadCursorA
proc oid_cur2hdl
parameters hdl&,cur&
add cur&,32648
ASetClassLong(hdl&,-12,ALoadCursor(0,cur&))
endproc
oid_cur2hdl %hwnd,1
oid_cur2hdl toolbar&,1
oid_cur2hdl button&,2
oid_cur2hdl input&,4 ..5...6...7...... | 27.05.2004 ▲ | |
|
|
|
|
Manfred Barei | allô si,
comment doit je vorgehen si je verschiedene Cursor aus qui Prfrun32 magasin et den Controls zuweisen voudrais.
Grus Manfred |
|
|
| Zu wenig Wissen ist gefärlich, zu viel auch.(XProfan X4) | Win 10 Pro 64 | Win7 Ultimate 32/64 | AMD FX-8320, 16GB, GeForce GT 630 | | 13.07.2004 ▲ |
|
|
|
|
| |
|
| |
|
|
|
Manfred Barei | allô si,
oui c'est mir bien sûr, so mach je es oui im moment. maintenant voudrais je mais chaque Contrôle une eigenen Cursor trop weisen. sprich dem %HWnd Cursor 1, den Buttons Cursor 2 et so plus. dans deinem ersten besispiel était es oui woll aussi so wen je es richtig verstanden habe, là wurden mais qui Cursor aus einer externe DLL geladen. cet voudrais je mais pas, je voudrais aucun seperate dll avec liefern, sonder qui Cuirsor aus qui Prfrun32 magasin et den individuel Controlls zuzweisen (si cet possible ist?).
je hofe tu peux aider.
grus manfred |
|
|
| Zu wenig Wissen ist gefärlich, zu viel auch.(XProfan X4) | Win 10 Pro 64 | Win7 Ultimate 32/64 | AMD FX-8320, 16GB, GeForce GT 630 | | 16.07.2004 ▲ |
|
|
|
|
| |
|
| |
|
|
|
Manfred Barei | allô si,
oui so meinte je es, maintenant klappt es.
cependant habe je encore une Frage en supplément :?: , comment belege je qui Menüleiste avec einem eigenen Cursor?
cela Hauptwindow et qui Buttons ist bien sûr mais qui Menüleiste?
Pour deine nochmalige hilfe maintenant déjà un merci!
Grus Manfred |
|
|
| Zu wenig Wissen ist gefärlich, zu viel auch.(XProfan X4) | Win 10 Pro 64 | Win7 Ultimate 32/64 | AMD FX-8320, 16GB, GeForce GT 630 | | 18.07.2004 ▲ |
|
|
|
|
| eh bien, c'est pas espace-trop simple, avec Subclassing ou bien einem Nebenthread ginge es cependant déjà. la hâte Du wirklich encore intérêt? ensuite serait je mich là la fois ransetzen. Braucht XProfan.
jusqu'à denne, iF |
|
|
| |
|
|
|
Manfred Barei | allô si,
oui , währe très interesant. XProfan ist im einsatz.
grus manfred |
|
|
| Zu wenig Wissen ist gefärlich, zu viel auch.(XProfan X4) | Win 10 Pro 64 | Win7 Ultimate 32/64 | AMD FX-8320, 16GB, GeForce GT 630 | | 18.07.2004 ▲ |
|
|
|
|
| Ok, je exposition si je demain en supplément komm. jusqu'à denne. |
|
|
| |
|
|
|
| Nagut, tu as es oui so gewollt. KompilierenMarqueSéparation {$crq}
DECLARE A%,B%,C%,A$,B$,C$,A&,B&,C&,A!,B!,C!,A#,B#,C#,FUNCT1&,FUNCT2&,FUNCT3&,MINID%,MAXID%,ASM&,DUMMY&,INFO%
Declare mxi#,threadstack%
threadstack%=0
WINDOWTITLE ""
WINDOWSTYLE 16+8+2
WINDOW 50,50-500,150
USERMESSAGES 16
SETACTIVEWINDOW(%HWND)
INFO%=CREATE("text",%HWND,"",200,50,200,20)
DEF GETMODULEHANDLE(1) !"KERNEL32","GetModuleHandleA"
DEF GETPROCADDRESS(2) !"KERNEL32","GetProcAddress"
DEF CREATETHREAD(6) !"KERNEL32","CreateThread"
DEF TERMINATETHREAD(2) !"KERNEL32","TerminateThread"
A$="Kernel32"
A&=GETMODULEHANDLE(ADDR(A$))
A$="Sleep"
FUNCT1&=GETPROCADDRESS(A&,ADDR(A$))
A$="User32"
A&=GETMODULEHANDLE(ADDR(A$))
A$="GetMenuState"
FUNCT2&=GETPROCADDRESS(A&,ADDR(A$))
A$="SendMessageA"
FUNCT3&=GETPROCADDRESS(A&,ADDR(A$))
POPUP "Datei"
APPENDMENU 2001,"Neu"
APPENDMENU 2002,"Öffnen"
APPENDMENU 2003,"Speichern"
MINID%=2001
MAXID%=2003
DiM B#,200
CLEAR B#
LONG B#,0 =FUNCT1&
LONG B#,4 =FUNCT2&
LONG B#,8 =FUNCT3&
LONG B#,12 =&HMENU
LONG B#,16 =MINID%
LONG B#,20 =MAXID%
LONG B#,24 =INFO%
LONG B#,28 =20
LONG B#,32 =0
LONG B#,36 =0
STRING B#,40="Neue Datei anlegen"
STRING B#,60="Datei öffnen"
STRING B#,80="Datei speichern"
STRING B#,100="Kein Menü"
DiM A#,100
LONG A#,0=-1947432107
LONG A#,4=1200294013
LONG A#,8=1200177172
LONG A#,12=276269856
LONG A#,16=174727403
LONG A#,20=-788592757
LONG A#,24=-11141014
LONG A#,28=1200295031
LONG A#,32=1037106948
LONG A#,36=128
LONG A#,40=2005468021
LONG A#,44=1200309792
LONG A#,48=-264552428
LONG A#,52=1603001461
LONG A#,56=608668448
LONG A#,60=527745851
LONG A#,64=723804041
LONG A#,68=-1014296481
LONG A#,72=-149135477
LONG A#,76=-2084109341
LONG A#,80=1783638208
LONG A#,84=-15963648
LONG A#,88=1200298103
LONG A#,92=-2083455224
LONG A#,96=-1569521153
ASM&=CREATETHREAD(0,0,A#,B#,0,ADDR(DUMMY&))
Class mxiiNt = #iNtTime&,#iNtPrc&,#iNtID&,OniNt@,iNtOn@,iNtOff@
Dim mxi#,mxiiNt
mxi#.OniNt(100,ProcAddr("Thread",0))
mxi#.iNtOn()
WHILEnot equ(%key,2)
WAITINPUT
IF %UMESSAGE=16
BREAK
ENDIF
ENDWHILE
mxi#.iNtOff()
TERMINATETHREAD(ASM&,259)
DISPOSE A#
DISPOSE B#
end
proc thread
case threadstack%:return
add threadstack%,1
if "Kein Menü"=gettext$(info%)
usecursor 0
else
usecursor 4
endif
add threadstack%,-1
endproc
Proc mxiiNt.OniNt
Parameters time&, proc&
.iNtTime& = time&
.iNtPrc& = proc&
Endproc
Proc mxiiNt.iNtOn
.iNtID& = External("user32.dll","SetTimer",0,0,.iNtTime&,.iNtPrc&)
Endproc
Proc mxiiNt.iNtOff
If .iNtID& <> 0
External("user32.dll","KillTimer",0,.iNtID&)
< s=s4 href='./../../funktionsreferenzen/XProfan/endif/'>EndIf
ENDPROC
jusqu'à denne, iF |
|
|
| |
|
|
|
| |
|
| |
|
|