Meine frage ist:
Ich habe ein Jahres-kalender erstellt und möchte wissen, wenn man ein Datum bereich mit der Maus anklickt, dass das Fenster geschlossen wird.
z.B
http://gpihome.de/purebasic/
so wie er in seine "Termin-Kalender" gemacht hat.
Quell Code:
Code: Alles auswählen
Procedure MonthRequester(sDate)
GetCursorPos_(mouse.POINT)
SelDate=0
getwindowrect_(GadgetID(#Gadget_Titel),rect.RECT)
If OpenWindow(#win_Month,rect\left+(rect\right-rect\left)/2-410/2,rect\bottom,410,320,#PB_Window_Invisible|#PB_Window_BorderLess,#Lg_TagWaehlen,WindowID(#Win_Main))
hCal=CreateWindowEx_(0,"SysMonthCal32","Kalender",#WS_BORDER|#WS_CHILD|#MCS_WEEKNUMBERS|#MCS_DAYSTATE ,0,0,410,320,WindowID(#win_Month),0,GetModuleHandle_(0),0)
AddKeyboardShortcut(#win_Month,#PB_Shortcut_Escape,#Menu_Hide)
EnableWindow_(WindowID(#Win_Main),#False)
HideWindow(#win_Month,#False)
ShowWindow_(hCal,#SW_SHOW)
While WindowEvent():Wend
st.SYSTEMTIME
st\wYear=Year(sDate)
st\wMonth=Month(sDate)
st\wDay=Day(sDate)
SendMessage_(hCal,#MCM_SETCURSEL,0,@st)
If hCal
While SelDate=0
Event=WaitWindowEvent()
If Event= #PB_Event_Menu
If EventMenuID()=#Menu_Hide
Break
EndIf
EndIf
If Event=#PB_Event_CloseWindow
Break
EndIf
Wend
EndIf
While getasynckeystate_(#VK_LBUTTON)&$FF00:Delay(1):Wend
UseWindow(#Win_Main)
EnableWindow_(WindowID(#Win_Main),#True)
ActivateWindow()
CloseWindow(#win_Month)
EndIf
ProcedureReturn SelDate
EndProcedure
MfG
usim