Français
Source/ Codesnippets

Contrôle Mauscursor änderung

 
Mauscursor Changement je pour Contrôle, avec diesem Code peux chaque Contrôle un eigener Cursor zugeordnet volonté.

KompilierenMarqueSéparation
DEF 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  
 



Achso, na ist entier simple:
KompilierenMarqueSéparationjusqu'à denne, iF
 
14.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  
 



Cool, soll la fois einer dire je pourrait pas am Thema vorbei-quatschen.
KompilierenMarqueSéparation
 {$iq}
DEF ASetClassLong(3) ! "User32","SetClassLongA"
Def ALoadCursor(2) !"USER32","LoadCursorA"
print
ASetClassLong(%HWND,-12,ALoadCursor(%hinstance,"DRUCKER"))
waitinpu
jusqu'à denne, iF
 
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
 
18.07.2004  
 




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.
 
18.07.2004  
 



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
 
19.07.2004  
 



Nachtrag:

Einem Contrôle den Default-Cursor mettons:
KompilierenMarqueSéparation
KompilierenMarqueSéparation
OCR_APPSTARTING = { $7F8A | 32650 }
OCR_CROSS = { $7F03 | 32515 }
OCR_HAND = { $7F89 | 32649 }
OCR_IBEAM = { $7F01 | 32513 }
OCR_ICOCUR = { $7F87 | 32647 }
OCR_ICON = { $7F81 | 32641 }
OCR_NO = { $7F88 | 32648 }
OCR_NORMAL = { $7F00 | 32512 }
OCR_SIZE = { $7F80 | 32640 }
OCR_SIZEALL = { $7F86 | 32646 }
OCR_SIZENESW = { $7F83 | 32643 }
OCR_SIZENS = { $7F85 | 32645 }
OCR_SIZENWSE = { $7F82 | 32642 }
OCR_SIZEWE = { $7F84 | 32644 }
OCR_UP = { $7F04 | 32516 }
OCR_WAIT = { $7F02 | 32514 >}
 
16.09.2006  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

7.929 Views

Untitledvor 0 min.
H.Brill14.04.2021
Klaus Ernst20.04.2016
Mittermeier Daniel09.01.2013
Julian Schmidt25.02.2012
plus...

Themeninformationen

cet Thema hat 3 participant:

unbekannt (6x)
Manfred Barei (4x)
iF (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie