Window Callback Verständnisfragen
Verfasst: 14.12.2005 22:39
Ich habe mir einen Window Callback aus dem Forum rausgesucht den ich gerade brauche. Stand in einem Post von hallodri und ich habe ein bischer daran geändert.
Nun zu meinen Fragen:
1. Warum wir das gemacht [c]wParam>>16[/c]?
Das verschiebt doch das wParam dorthin wo das lParam steht? Wenn ja warum?
2. Der Rest ist mir völlig unklar [c]& $FFFF[/c]
Ein Binärwert von z.B. $F=1111 bitweise mit einem [c]beliebigen Binärwert[/c] verknüpft, ergibt doch immer den [c]beliebigen Binärwert[/c]?
3. Wo ist der Unterschied bei den Rückgabewerten bzw. deren Auswirkungen. [c](ProcedureReturn 0, ProcedureReturn #PB_ProcessPureBasicEvents)[/c]
4. Ist es in Ordnung das ich in einem Callback [c]Select EventGadgetID()[/c] verwende oder ist das unsauber?
Code: Alles auswählen
Procedure Callback(hwnd, msg, wParam, lParam)
Result = #PB_ProcessPureBasicEvents
Select msg
Case #WM_COMMAND
Select ((wParam>>16) & $FFFF)
Case #CBN_SELCHANGE
Select EventGadgetID()
Case #SearchState
Search()
ProcedureReturn 0
EndSelect
EndSelect
EndSelect
ProcedureReturn Result
EndProcedure
1. Warum wir das gemacht [c]wParam>>16[/c]?
Das verschiebt doch das wParam dorthin wo das lParam steht? Wenn ja warum?
2. Der Rest ist mir völlig unklar [c]& $FFFF[/c]
Ein Binärwert von z.B. $F=1111 bitweise mit einem [c]beliebigen Binärwert[/c] verknüpft, ergibt doch immer den [c]beliebigen Binärwert[/c]?
3. Wo ist der Unterschied bei den Rückgabewerten bzw. deren Auswirkungen. [c](ProcedureReturn 0, ProcedureReturn #PB_ProcessPureBasicEvents)[/c]
4. Ist es in Ordnung das ich in einem Callback [c]Select EventGadgetID()[/c] verwende oder ist das unsauber?