Code : Tout sélectionner
;
; ===================================================================
; CalcSouitFinal_10_Cst_Enum.pb
; Liste: -Constantes/-Variables/-Fonts/-etc
; Recopier pour un seul fichier
; ===================================================================
;- Window Constants
;
Enumeration
#Window_0
EndEnumeration
;- MenuBar Constants
;
Enumeration
#MenuBar_0
EndEnumeration
Enumeration
#MENU_1
#MENU_2
#MENU_3
EndEnumeration
;- Gadget Constants
;
Enumeration
#String_0
#String_1
#String_2
#String_3
#String_4
#String_5
#String_6
#String_7
#String_8
#String_10
#String_11
#String_12
#String_14
#String_15
#String_16
#String_17
#String_18
#String_19
#String_20
#String_21
#String_22
#String_23
#String_24
#String_25
#String_27
#String_28
#String_29
#String_30
#String_31
#String_32
#String_33
#String_34
#String_35
#String_36
#String_37
#String_38
#String_40
#String_41
EndEnumeration
Global Nbr25$, Nbr33$, Nbr37$, Nbr50$, Nbr66$,Nbr75$, Nbr100$, Nbr5f$,Nbr20f$, Nbr30f$, Nbr50f$, TotalSout$
Global Nbr25,Nbr33, Nbr37, Nbr50, Nbr66, Nbr75, Nbr100, Nbr5f, Nbr20f, Nbr30f, Nbr50f
Global Tot25, Tot33, Tot37, Tot50, Tot66, Tot75, Tot100, Tot5f, Tot20f, Tot30f,Tot50f, Total
;- Fonts
Global FontID1
FontID1 = LoadFont(1, "Arial", 9, #PB_Font_Bold)
Global FontID3
FontID3 = LoadFont(3, "Courier", 10, #PB_Font_Bold)
; =======================================================================
; CalcSoutFinal_10_Inc.pb
; Les procedures
; recopier pour un seul fichier
; =======================================================================
Procedure Open_Window_0()
If OpenWindow(#Window_0, 224, 59, 487, 451, "Volume d'un embouteillage (bouteilles et fûts)", #PB_Window_SystemMenu | #PB_Window_TitleBar | #PB_Window_ScreenCentered | #PB_Window_WindowCentered )
If CreateMenu(#MenuBar_0, WindowID(#Window_0))
MenuTitle("Infos")
MenuItem(#MENU_1, "Notes")
MenuBar()
MenuItem(#MENU_2, "A propos ...")
MenuBar()
MenuItem(#MENU_3, "Quitter")
EndIf
If CreateGadgetList(WindowID(#Window_0))
StringGadget(#String_0, 65, 45, 135, 25, "Contidionnement", #PB_String_ReadOnly)
SetGadgetFont(#String_0, FontID1)
StringGadget(#String_1, 65, 70, 135, 25, " Bouteilles de 25 cl.", #PB_String_ReadOnly)
StringGadget(#String_2, 65, 95, 135, 25, " Bouteilles de 33 cl.", #PB_String_ReadOnly)
StringGadget(#String_3, 65, 120, 135, 25, " Bouteilles de 37,5 cl.", #PB_String_ReadOnly)
StringGadget(#String_4, 65, 145, 135, 25, " Bouteilles de 50 cl.", #PB_String_ReadOnly)
StringGadget(#String_5, 65, 170, 135, 25, " Bouteilles de 66 cl.", #PB_String_ReadOnly)
StringGadget(#String_6, 65, 195, 135, 25, " Bouteilles de 75 cl.", #PB_String_ReadOnly)
StringGadget(#String_7, 65, 220, 135, 25, " Bouteilles de 100 cl.", #PB_String_ReadOnly)
StringGadget(#String_8, 65, 245, 135, 25, " Fûts de 5 l.", #PB_String_ReadOnly)
StringGadget(#String_10, 65, 270, 135, 25, " Fûts de 20 l.", #PB_String_ReadOnly)
StringGadget(#String_11, 65, 295, 135, 25, " Fûts de 30 l.", #PB_String_ReadOnly)
StringGadget(#String_12, 65, 320, 135, 25, " Fûts de 50 l.", #PB_String_ReadOnly)
StringGadget(#String_14, 200, 45, 100, 25, " Nbr. d'unit.", #PB_String_ReadOnly)
SetGadgetFont(#String_14, FontID1)
StringGadget(#String_15, 200, 70, 100, 25, "", #PB_String_Numeric)
StringGadget(#String_16, 200, 95, 100, 25, "", #PB_String_Numeric)
StringGadget(#String_17, 200, 120, 100, 25, "", #PB_String_Numeric)
StringGadget(#String_18, 200, 145, 100, 25, "", #PB_String_Numeric)
StringGadget(#String_19, 200, 170, 100, 25, "", #PB_String_Numeric)
StringGadget(#String_20, 200, 195, 100, 25, "", #PB_String_Numeric)
StringGadget(#String_21, 200, 220, 100, 25, "", #PB_String_Numeric)
StringGadget(#String_22, 200, 245, 100, 25, "", #PB_String_Numeric)
StringGadget(#String_23, 200, 270, 100, 25, "", #PB_String_Numeric)
StringGadget(#String_24, 200, 295, 100, 25, "", #PB_String_Numeric)
StringGadget(#String_25, 200, 320, 100, 25, "", #PB_String_Numeric)
StringGadget(#String_27, 300, 45, 115, 25, " Vol. en litres", #PB_String_ReadOnly); | #PB_String_Numeric)
SetGadgetFont(#String_27, FontID1)
StringGadget(#String_28, 300, 70, 115, 25, "", #PB_String_ReadOnly | #PB_String_Numeric)
SetGadgetFont(#String_28, FontID3)
StringGadget(#String_29, 300, 95, 115, 25, "", #PB_String_ReadOnly | #PB_String_Numeric)
SetGadgetFont(#String_29, FontID3)
StringGadget(#String_30, 300, 120, 115, 25, "", #PB_String_ReadOnly | #PB_String_Numeric)
SetGadgetFont(#String_30, FontID3)
StringGadget(#String_31, 300, 145, 115, 25, "", #PB_String_ReadOnly | #PB_String_Numeric)
SetGadgetFont(#String_31, FontID3)
StringGadget(#String_32, 300, 170, 115, 25, "", #PB_String_ReadOnly | #PB_String_Numeric)
SetGadgetFont(#String_32, FontID3)
StringGadget(#String_33, 300, 195, 115, 25, "", #PB_String_ReadOnly | #PB_String_Numeric)
SetGadgetFont(#String_33, FontID3)
StringGadget(#String_34, 300, 220, 115, 25, "", #PB_String_ReadOnly | #PB_String_Numeric)
SetGadgetFont(#String_34, FontID3)
StringGadget(#String_35, 300, 245, 115, 25, "", #PB_String_ReadOnly | #PB_String_Numeric)
SetGadgetFont(#String_35, FontID3)
StringGadget(#String_36, 300, 270, 115, 25, "", #PB_String_ReadOnly | #PB_String_Numeric)
SetGadgetFont(#String_36, FontID3)
StringGadget(#String_37, 300, 295, 115, 25, "", #PB_String_ReadOnly | #PB_String_Numeric)
SetGadgetFont(#String_37, FontID3)
StringGadget(#String_38, 300, 320, 115, 25, "", #PB_String_ReadOnly | #PB_String_Numeric)
SetGadgetFont(#String_38, FontID3)
StringGadget(#String_40, 65, 360, 235, 25, " Total du volume en litres", #PB_String_ReadOnly)
SetGadgetFont(#String_40, FontID1)
StringGadget(#String_41, 300, 360, 115, 25, "", #PB_String_ReadOnly)
SetGadgetFont(#String_41, FontID3)
EndIf
EndIf
EndProcedure
Procedure Total_Soutirre()
If Nbr25$ = ""
Nbr25 = 0
EndIf
If Nbr33$ = ""
Nbr33 = 0
EndIf
If Nbr37$ = ""
Nbr37= 0
EndIf
If Nbr50$ = ""
Nbr50 = 0
EndIf
If Nbr66$ = ""
Nbr66 = 0
EndIf
If Nbr75$ = ""
Nbr75 = 0
EndIf
If Nbr100$ = ""
Nbr100= 0
EndIf
If Nbr5f$ = ""
Nbr5f = 0
EndIf
If Nbr20f$ = ""
Nbr20f = 0
EndIf
If Nbr30f$ = ""
Nbr30f= 0
EndIf
If Nbr50f$ = ""
Nbr50f = 0
EndIf
Total=Tot25 + Tot33 + Tot37 + Tot50 + Tot66 + Tot75 + Tot100 + Tot5f +Tot20f + Tot30f +Tot50f
TotalSout$ =Str(Total)
Longueur = Len(TotalSout$)
NouveauTot$ = Space(8 - Longueur) + TotalSout$
TotalSout$ = NouveauTot$
SetGadgetColor(#String_41, #PB_Gadget_BackColor, $00FFFF)
SetGadgetColor(#String_41, #PB_Gadget_FrontColor, $000000)
SetGadgetText(#String_41, TotalSout$)
EndProcedure
Procedure Bt_25cl()
Nbr25$ = GetGadgetText(#String_15)
Nbr25 = Val(Nbr25$)
If Nbr25 >= 132000
MessageRequester("Information", "Le nombre de bts. de 25 cl. est limité à 132000", #PB_MessageRequester_Ok)
Nbr25$ = ""
SetGadgetText(#String_15, Nbr25$)
Tot25$ =""
SetGadgetText(#String_28, Tot25$)
Nbr25 = 0
EndIf
Tot25= (Val(Nbr25$)) * 0.25
Tot25$ =Str(Tot25)
Longueur = Len(Tot25$)
NouveauTot25$ = Space(8 - Longueur) + Tot25$
Tot25$ = NouveauTot25$
SetGadgetText(#String_28, Tot25$)
Total_Soutirre()
EndProcedure
Procedure Bt_33cl()
Nbr33$ = GetGadgetText(#String_16)
Nbr33 = Val(Nbr33$)
If Nbr33 >= 99000
MessageRequester("Information", "Le nombre de 33cl. est limité à 99000bts.", #PB_MessageRequester_Ok)
Nbr33$ = ""
SetGadgetText(#String_16, Nbr33$)
Tot33$ =""
SetGadgetText(#String_29, Tot33$)
Nbr33 = 0
EndIf
Tot33 = (Val(Nbr33$)) * 0.33
Tot33$ =Str(Tot33)
Tot33$ = Space(8 -Len(Tot33$)) +Tot33$
SetGadgetText(#String_29, Tot33$)
Total_Soutirre()
EndProcedure
Procedure Bt_37cl()
Nbr37$ = GetGadgetText(#String_17)
Nbr37 = Val(Nbr37$)
If Nbr37 >= 88000
MessageRequester("Information", "Le nombre de 37,5cl. est limité à 88000bts.", #PB_MessageRequester_Ok)
Nbr37$ = ""
SetGadgetText(#String_17, Nbr37$)
Tot37$ =""
SetGadgetText(#String_30, Tot37$)
Nbr37 = 0
EndIf
Tot37 = (Val(Nbr37$)) * 0.375
Tot37$ =Str(Tot37)
Tot37$ = Space(8 -Len(Tot37$)) +Tot37$
SetGadgetText(#String_30, Tot37$)
Total_Soutirre()
EndProcedure
Procedure Bt_50cl()
Nbr50$ = GetGadgetText(#String_18)
Nbr50 = Val(Nbr50$)
If Nbr50 >= 66000
MessageRequester("Information", "Le nombre de 50cl. est limité à 66000bts.", #PB_MessageRequester_Ok)
Nbr50$ = ""
SetGadgetText(#String_18, Nbr37$)
Tot50$ =""
SetGadgetText(#String_31, Tot37$)
Nbr50 = 0
EndIf
Tot50 = (Val(Nbr50$)) * 0.5
Tot50$ =Str(Tot50)
Tot50$ = Space(8 -Len(Tot50$)) +Tot50$
SetGadgetText(#String_31, Tot50$)
Total_Soutirre()
EndProcedure
Procedure Bt_66cl()
Nbr66$ = GetGadgetText(#String_19)
Nbr66 = Val(Nbr66$)
If Nbr66 >= 50000
MessageRequester("Information", "Le nombre de 66cl. est limité à 50000bts.", #PB_MessageRequester_Ok)
Nbr66$ = ""
SetGadgetText(#String_19, Nbr66$)
Tot66$ =""
SetGadgetText(#String_32, Tot66$)
Nbr66 = 0
EndIf
Tot66 = (Val(Nbr66$)) * 0.66
Tot66$ =Str(Tot66)
Tot66$ = Space(8 -Len(Tot66$)) +Tot66$
SetGadgetText(#String_32, Tot66$)
Total_Soutirre()
EndProcedure
Procedure Bt_75cl()
Nbr75$ = GetGadgetText(#String_20)
Nbr75 = Val(Nbr75$)
If Nbr75 >= 44000
MessageRequester("Information", "Le nombre de bts. de 75 cl. est limité à 44000", #PB_MessageRequester_Ok)
Nbr75$ = ""
SetGadgetText(#String_20, Nbr75$)
Tot75$ =""
SetGadgetText(#String_33, Tot75$)
Nbr75 = 0
EndIf
Tot75= (Val(Nbr75$)) * 0.75
Tot75$ =Str(Tot75)
Longueur = Len(Tot75$)
NouveauTot75$ = Space(8 - Longueur) + Tot75$
Tot75$ = NouveauTot75$
SetGadgetText(#String_33, Tot75$)
Total_Soutirre()
EndProcedure
Procedure Bt_100cl()
Nbr100$ = GetGadgetText(#String_21)
Nbr100 = Val(Nbr100$)
If Nbr100 >= 33000
MessageRequester("Information", "Le nombre de bts. de 100 cl. est limité à 33000", #PB_MessageRequester_Ok)
Nbr100$ = ""
SetGadgetText(#String_21, Nbr100$)
Tot100$ =""
SetGadgetText(#String_34, Tot100$)
Nbr100 = 0
EndIf
Tot100= (Val(Nbr100$)) * 1
Tot100$ =Str(Tot100)
Longueur = Len(Tot100$)
NouveauTot100$ = Space(8 - Longueur) + Tot100$
Tot100$ = NouveauTot100$
SetGadgetText(#String_34, Tot100$)
Total_Soutirre()
EndProcedure
Procedure Fut_5l()
Nbr5f$ = GetGadgetText(#String_22)
Nbr5f = Val(Nbr5f$)
If Nbr5f >= 6600
MessageRequester("Information", "Le nombre de fûts de 5 ltr. est limité à 6600", #PB_MessageRequester_Ok)
Nbr5f$ = ""
SetGadgetText(#String_22, Nbr5f$)
Tot5f$ =""
SetGadgetText(#String_35, Tot5f$)
Nbr5f = 0
EndIf
Tot5f= (Val(Nbr5f$)) * 5
Tot5f$ =Str(Tot5f)
Longueur = Len(Tot5f$)
NouveauTot5f$ = Space(8 - Longueur) + Tot5f$
Tot5f$ = NouveauTot5f$
SetGadgetText(#String_35, Tot5f$)
Total_Soutirre()
EndProcedure
Procedure Fut_20l()
Nbr20f$ = GetGadgetText(#String_23)
Nbr20f = Val(Nbr20f$)
If Nbr20f >= 1650
MessageRequester("Information", "Le nombre de fûts de 20 ltr. est limité à 1650", #PB_MessageRequester_Ok)
Nbr20f$ = ""
SetGadgetText(#String_23, Nbr20f$)
Tot20f$ =""
SetGadgetText(#String_36, Tot20f$)
Nbr20f = 0
EndIf
Tot20f = (Val(Nbr20f$)) * 20
Tot20f$ =Str(Tot20f)
Longueur = Len(Tot20f$)
NouveauTot20f$ = Space(8 - Longueur) + Tot20f$
Tot20f$ = NouveauTot20f$
SetGadgetText(#String_36, Tot20f$)
Total_Soutirre()
EndProcedure
Procedure Fut_30l()
Nbr30f$ = GetGadgetText(#String_24)
Nbr30f = Val(Nbr30f$)
If Nbr30f >= 1100
MessageRequester("Information", "Le nombre de fûts de 30 ltr. est limité à 1100", #PB_MessageRequester_Ok)
Nbr30f$ = ""
SetGadgetText(#String_24, Nbr30f$)
Tot30f$ =""
SetGadgetText(#String_37, Tot30f$)
Nbr30f = 0
EndIf
Tot30f = (Val(Nbr30f$)) * 30
Tot30f$ =Str(Tot30f)
Longueur = Len(Tot30f$)
NouveauTot30f$ = Space(8 - Longueur) + Tot30f$
Tot30f$ = NouveauTot30f$
SetGadgetText(#String_37, Tot30f$)
Total_Soutirre()
EndProcedure
Procedure Fut_50l()
Nbr50f$ = GetGadgetText(#String_25)
Nbr50f = Val(Nbr50f$)
If Nbr50f >= 660
MessageRequester("Information", "Le nombre de fûts de 50 ltr. est limité à 660", #PB_MessageRequester_Ok)
Nbr50f$ = ""
SetGadgetText(#String_25, Nbr50f$)
Tot50f$ =""
SetGadgetText(#String_38, Tot50f$)
Nbr50f = 0
EndIf
Tot50f = (Val(Nbr50f$)) * 50
Tot50f$ =Str(Tot50f)
Longueur = Len(Tot50f$)
NouveauTot50f$ = Space(8 - Longueur) + Tot50f$
Tot50f$ = NouveauTot50f$
SetGadgetText(#String_38, Tot50f$)
Total_Soutirre()
EndProcedure
;========================================================================================
;===============================Programme principal =====================================
;========================================================================================
;IncludeFile "CalcSoutFinal_10_Cst_Enum.pb" ;constantes, enum et compagnie
;IncludeFile "CalcSoutFinal_10_Inc.pb" ;les procedures
;========================================================================================
Open_Window_0()
Repeat ; boucle principale
Event_De_Win_OS = WaitWindowEvent() ; Reçu de Window_OS
WindowID = EventWindow() ; La fenètre concernée
GadgetID = EventGadget() ; Le gadget concerné
EventType = EventType() ; Type d'évènement
;Code menu
If Event_De_Win_OS = #PB_Event_Menu
MenuID = EventMenu()
If MenuID = #MENU_1
MessageRequester("Note !", "La valeur dans la colonne [Nbr. d'unit.] est limitée à " + Chr(10) + " " + Chr(10) + " 132 000 pour les btls. de 25 cl." + Chr(10) + " 99 000 pour les btls. de 33 cl." + Chr(10) + " 88 000 pour les btls. de 37,5 cl." + Chr(10) + " 66 000 pour les btls. de 50 cl." + Chr(10) + " 50 000 pour les btls. de 66 cl. " + Chr(10) + " 44 000 pour les btls. de 75 cl." + Chr(10) + " 33 000 pour les btls. de 100 cl." + Chr(10) + " 6 600 pour les fûts de 5 ltrs. " + Chr(10) + " 1 650 pour les fûts de 20 ltrs." + Chr(10) + " 1 100 pour les fûts de 30 trs." + Chr(10) + " 660 pour les fûts de 50 ltrs." + Chr(10) + "" + Chr(10) + "Dans la colonne [Vol. en litres], le produit est " + Chr(10) + "arrondi au litre le plus proche." + Chr(10) + "", #MB_OK|#MB_ICONWARNING)
ElseIf MenuID = #MENU_2
MessageRequester("Info !", " " + Chr(10) + " Compiler avec PureBasic 5.11 " + Chr(10) + " " + Chr(10) + " Site : www.purebasic.com/french/index.php " + Chr(10) + "" + Chr(10) + " Auteur R-Skr - Mai 2013", #MB_OK|#MB_ICONINFORMATION|#MB_DEFBUTTON3)
ElseIf MenuID = #MENU_3
End
EndIf
EndIf
;Code Gadget
If Event_De_Win_OS = #PB_Event_Gadget
If GadgetID = #String_15;------------------------------------------------------------ BTL 25cl
Bt_25cl()
ElseIf GadgetID = #String_16;-------------------------------------------------BTL 33cl
Bt_33cl()
ElseIf GadgetID = #String_17;---------------------------------------------------BTL 37,5cl
Bt_37cl()
ElseIf GadgetID = #String_18;---------------------------------------------------BTL 50cl
Bt_50cl()
ElseIf GadgetID = #String_19;---------------------------------------------------BTL 66cl
Bt_66cl()
ElseIf GadgetID = #String_20;---------------------------------------------------BTL 75cl
Bt_75cl()
ElseIf GadgetID = #String_21;---------------------------------------------------BTL 100cl
Bt_100cl()
ElseIf GadgetID = #String_22;---------------------------------------------------FU 5 L
Fut_5l()
ElseIf GadgetID = #String_23;---------------------------------------------------FU 20 L
Fut_20l()
ElseIf GadgetID = #String_24;---------------------------------------------------FU 30 L
Fut_30l()
ElseIf GadgetID = #String_25;---------------------------------------------------FU 50 L
Fut_50l()
; ElseIf GadgetID = #String_41
EndIf
EndIf
Until Event_De_Win_OS = #PB_Event_CloseWindow ; Fin de la boucle principale
End
; ================================ Fin ========================================