1+ import os
2+ from delphifmx import *
3+
4+ class Main_Window (Form ):
5+
6+ def __init__ (self , owner ):
7+ self .styleRuby = None
8+ self .styleLight = None
9+ self .ListBox1 = None
10+ self .ListBoxItem1 = None
11+ self .editTotal = None
12+ self .Label6 = None
13+ self .ListBoxItem2 = None
14+ self .Label7 = None
15+ self .editTip = None
16+ self .ListBoxItem3 = None
17+ self .trackTip = None
18+ self .ListBoxItem4 = None
19+ self .editPeople = None
20+ self .Label3 = None
21+ self .ListBoxItem5 = None
22+ self .trackPeople = None
23+ self .ListBoxItem6 = None
24+ self .Layout2 = None
25+ self .ListBoxItem7 = None
26+ self .per_person_share = None
27+ self .Label1 = None
28+ self .ListBoxItem8 = None
29+ self .bill_plus_tip = None
30+ self .Label5 = None
31+ self .ListBoxItem9 = None
32+ self .gold_style_btn = None
33+ self .ruby_style_btn = None
34+ self .light_style_btn = None
35+ self .default_style = None
36+ self .styleGold = None
37+ self .LoadProps (os .path .join (os .path .dirname (os .path .abspath (__file__ )), "TipMain.pyfmx" ))
38+ self .editTotal .OnChange = self .editTotalChange
39+ self .editTotal .Value = 100
40+ self .editTip .Value = 20
41+ self .editPeople .Value = 4
42+
43+ def calc_bill_plus_tip (self ):
44+ total = self .editTotal .Value
45+ tip_percent = self .editTip .Value
46+
47+ if total != 0 :
48+ self .bill_plus_tip .Text = str (round (total + (tip_percent * total )/ 100 , 2 ))
49+ print (round (total + (tip_percent / total )* 100 , 2 ))
50+ else :
51+ self .bill_plus_tip .Text = str (0 )
52+
53+ def calc_per_person_share (self ):
54+ persons = self .editPeople .Value
55+
56+ self .per_person_share .Text = str (round (float (self .bill_plus_tip .Text ) / persons , 2 ))
57+
58+ def editTotalChange (self , Sender ):
59+ self .calc_bill_plus_tip ()
60+ self .calc_per_person_share ()
61+
62+ def editTipChange (self , Sender ):
63+ self .trackTip .Value = self .editTip .Value
64+ self .calc_bill_plus_tip ()
65+ self .calc_per_person_share ()
66+
67+ def trackTipChange (self , Sender ):
68+ self .editTip .Value = self .trackTip .Value
69+ self .calc_bill_plus_tip ()
70+ self .calc_per_person_share ()
71+
72+ def editPeopleChange (self , Sender ):
73+ self .trackPeople .Value = self .editPeople .Value
74+ self .calc_bill_plus_tip ()
75+ self .calc_per_person_share ()
76+
77+ def trackPeopleChange (self , Sender ):
78+ self .editPeople .Value = self .trackPeople .Value
79+ self .calc_bill_plus_tip ()
80+ self .calc_per_person_share ()
81+
82+ def gold_style_btnClick (self , Sender ):
83+ self .styleBook = self .styleGold
84+
85+ def ruby_style_btnClick (self , Sender ):
86+ self .styleBook = self .styleRuby
87+
88+ def light_style_btnClick (self , Sender ):
89+ self .styleBook = self .styleLight
90+
91+ def default_styleClick (self , Sender ):
92+ self .styleBook = None
0 commit comments