[resolu] Récupération du Nième jour de l'année.
Publié : sam. 19/mai/2007 20:35
Me revoilà avec un nouveau petit projet pour m'entrainer à gérer les date.
Mais kékiveut lui ??
Et bien c'est simple.
Je voudrais faire en sorte que mon programme qui utilise un calendrier affiche le Nieme jour de l'année dans l'editor qui se trouve au dessous.
Ex : si je clique sur 15 fevrier 2007, j'aimerai voir apparaitre dans l'editor
Le 15 fevrier 2007 sera le 47eme jour de l'année.
Voilà à quoi ressemble l'interface :
Comment récupérer la date selectionnée sur le calendargadget ?
Comment ensuite la convertir (ajout des mois puis du nombre de jours) et l'afficher dans l'editeurgadget ?
J'ai reussi à faire un prog similaire en PHP mais sans calendar, juste en déclarant nbr_jour_janvier=31, nbr_jour_fevrier=28 etc... et apres une ribambelle de IF pour traiter tout ça. ça marchait mais c'est pas propre.
J'aimerai donc pouvoir gérer ça en PB avec le calendar.
Mais kékiveut lui ??
Et bien c'est simple.
Je voudrais faire en sorte que mon programme qui utilise un calendrier affiche le Nieme jour de l'année dans l'editor qui se trouve au dessous.
Ex : si je clique sur 15 fevrier 2007, j'aimerai voir apparaitre dans l'editor
Le 15 fevrier 2007 sera le 47eme jour de l'année.
Voilà à quoi ressemble l'interface :
Code : Tout sélectionner
; Nieme jour de l'année par Ar-S PB 4
;{- Enumerations / DataSections
;{ Windows
Enumeration
#Window_0
EndEnumeration
;}
;{ Gadgets
Enumeration
#Calendar_0
#Text_1
#Editor_2
EndEnumeration
;}
Define.l Event, EventWindow, EventGadget, EventType, EventMenu
;}
Procedure OpenWindow_Window_0()
If OpenWindow(#Window_0, 524, 210, 191, 400, "Ar-S Nieme jour", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
If CreateGadgetList(WindowID(#Window_0))
CalendarGadget(#Calendar_0, 0, 0, 190, 180)
TextGadget(#Text_1, 0, 180, 190, 50, "Choisissez une date et voyez à quel nombre de jour de l'année elle correspond")
EditorGadget(#Editor_2, 10, 255, 155, 115, #PB_Editor_ReadOnly)
EndIf
EndIf
EndProcedure
OpenWindow_Window_0()
;{- Event loop
Repeat
Event = WaitWindowEvent()
Select Event
; ///////////////////
Case #PB_Event_Gadget
EventGadget = EventGadget()
EventType = EventType()
If EventGadget = #Calendar_0
ElseIf EventGadget = #Text_1
ElseIf EventGadget = #Editor_2
EndIf
; //////////////////////
Case #PB_Event_CloseWindow
EventWindow = EventWindow()
If EventWindow = #Window_0
CloseWindow(#Window_0)
Break
EndIf
EndSelect
ForEver
;
;}
Comment ensuite la convertir (ajout des mois puis du nombre de jours) et l'afficher dans l'editeurgadget ?
J'ai reussi à faire un prog similaire en PHP mais sans calendar, juste en déclarant nbr_jour_janvier=31, nbr_jour_fevrier=28 etc... et apres une ribambelle de IF pour traiter tout ça. ça marchait mais c'est pas propre.
J'aimerai donc pouvoir gérer ça en PB avec le calendar.
