Τρίτη έκδοση του Χειριστή Γεγονότων.
Σε αυτή την έκδοση έχουν προστεθεί οι ετικέτες Ιδιωτικό και Δημόσιο οι οποίες στις κλάσεις δουλεύουν όπως στην C++, δηλαδή οι ιδιωτικές (μεταβλητές, συναρτήσεις, τμήματα, πίνακες και άλλες ομάδες) φαίνονται εντός των τμημάτων και των συναρτήσεων μόνο.
Στη κλάση Χειριστής_Γεγονότων υπάρχει ιδιωτική κλάση Στοιχείο_Ελέγχου. που χρησιμοποιείται στη συνάρτηση Στοιχείο_Πλήκτρο.
Τώρα μπορούμε να πούμε ότι ολοκληρώθηκε η γλώσσα!
Φορμα 80,40
Οθόνη 1, 0
Πένα 14
Αναφορά 2, "Χειριστής Γεγονότων"
Αναφορά "Χρησιμοποίησε πλήκρα 1, 2 και Δείκτης (ποντίκι) Αριστερά, και για έξοδο Δείκτης Δεξιά"
Οθόνη, 2
Κλάση Υπηρεσία_Δείκτη {
Ιδιωτικό:
αθροιστής, το_κουμπί_μου
Δημόσιο:
όνομα$="Πλήκτρο_Δείκτη"
Πίνακας αναφ$()
Τμήμα Υπηρεσία_Δείκτη {
Διάβασε .το_κουμπί_μου
.όνομα$<=μορφή$("{0}({1})", .όνομα$, .το_κουμπί_μου)
}
Τμήμα καταχώρησε {
.αθροιστής++
Πίνακας .αναφ$(.αθροιστής)
Διάβασε .αναφ$(.αθροιστής-1)
}
Συνάρτηση Επιβεβαίωση {
=Δείκτης=.το_κουμπί_μου
}
Συνάρτηση αθροιστής {
=.αθροιστής-1
}
}
Κλάση Υπηρεσία_Πλήκτρου {
Ιδιωτικό:
αθροιστής, το_κουμπί_μου
Δημόσιο:
όνομα$="Πλήκτρο",
Πίνακας αναφ$()
Τμήμα Υπηρεσία_Πλήκτρου {
Διάβασε .το_κουμπί_μου
.όνομα$<=μορφή$("{0}({1})", .όνομα$, .το_κουμπί_μου)
}
Τμήμα καταχώρησε {
.αθροιστής++
Πίνακας .αναφ$(.αθροιστής)
Διάβασε .αναφ$(.αθροιστής-1)
}
Συνάρτηση Επιβεβαίωση {
=Πατημένο(.το_κουμπί_μου)
}
Συνάρτηση αθροιστής {
=.αθροιστής-1
}
}
Κλάση Χειριστής_Γεγονότων {
Ιδιωτικό:
αθροιστής, αθροιστής_γεγονότων
Πίνακας Γεγονότα()
Κλάση Στοιχείο_Ελέγχου {
Ιδιωτικό:
αναφ$,
αναγνωριστικό, ονομασία$, Επιτρέπεται=Αληθής
Δημόσιο:
Τμήμα Σύνδεσε {
Διάβασε .αναφ$
}
Τμήμα Στοιχείο_Ελέγχου {
Διάβασε .αναγνωριστικό
Διάβασε .ονομασία$
}
Συνάρτηση Ονομασία$ {
=.ονομασία$
}
Συνάρτηση Κάλεσε_Πίσω {
Διάβασε περιγραφή$
Ένωσε Ισχνή .αναφ$ Στη αναφ
=αναφ.Ερώτημα(.αναγνωριστικό, περιγραφή$, &Αυτό)
}
}
Δημόσιο:
Επιτρέπω_Γεγονότα
Συνάρτηση Στοιχείο_Πλήκτρο {
.αθροιστής++
Διάβασε περιγραφή$
φτιάξε_με =.Στοιχείο_Ελέγχου(.αθροιστής,περιγραφή$)
φτιάξε_με.Σύνδεσε &Αυτό
=φτιάξε_με
}
Συνάρτηση Λίστα_Γεγονότων {
χειριστής=.αθροιστής_γεγονότων
.αθροιστής_γεγονότων++
Πίνακας .Γεγονότα(.αθροιστής_γεγονότων)
Διάβασε .Γεγονότα(χειριστής)
=χειριστής
}
Τμήμα καταχώρησε {
Διάβασε χειριστής, αναφ$
.Γεγονότα(χειριστής).καταχώρησε αναφ$
}
Συνάρτηση Παρατήρησε {
Αν Δεν .Επιτρέπω_Γεγονότα Τότε =Αληθής : Έξοδος
Τύπωσε "Παρατηρώ για Γεγονότα"
Για ν=0 Έως .αθροιστής_γεγονότων-1 {
Για .Γεγονότα(ν) {
Αν .Επιβεβαίωση() Τότε {
Για μ=0 Έως .αθροιστής() {
Για Αυτό {
Ένωσε Ισχνή .αναφ$(μ) στη Σύνδεση
Κάλεσε Σύνδεση.Κάλεσε_Πίσω(.όνομα$)
}
}
}
}
}
}
Συνάρτηση Ερώτημα {
Διάβασε αναγνωριστικό, περιγραφή$, &Στοιχείο_Ελέγχου
Τύπωσε υπό "Μέσα στο Χειριστής_Γεγονότων";
Τύπωσε υπό
Τύπωσε μέρος "Έλαβα ένα ερώτημα από το Στοιχείο_Ελέγχου με αριθμό "; αναγνωριστικό
Τύπωσε
Τύπωσε μέρος "Λέει:"; περιγραφή$
Τύπωσε
Για Στοιχείο_Ελέγχου {
Τύπωσε μέρος "Πήρα αυτή την ονομασία:";.ονομασία$()
Τύπωσε
=0
}
}
}
Χειριστής_Γεγονότων=Χειριστής_Γεγονότων() \\ δημιουργούμε τον χειριστή
β1=Χειριστής_Γεγονότων.Στοιχείο_Πλήκτρο("Πλήκτρο 1") \\ δημιουργούμε υποκείμενα
β2=Χειριστής_Γεγονότων.Στοιχείο_Πλήκτρο("Πλήκτρο 2")
β3=Χειριστής_Γεγονότων.Στοιχείο_Πλήκτρο("Πλήκτρο 3")
Για Χειριστής_Γεγονότων {
Πάτα_πλήκτρο_ένα=.Λίστα_Γεγονότων(Υπηρεσία_Πλήκτρου(49))
.καταχώρησε Πάτα_πλήκτρο_ένα, ισχνη$(β1) \\καταχώρησε γεγονός στο υποκείμενο
.καταχώρησε Πάτα_πλήκτρο_ένα, ισχνη$(β2)
.καταχώρησε .Λίστα_Γεγονότων(Υπηρεσία_Πλήκτρου(50)) , ισχνή$(β1)
.καταχώρησε .Λίστα_Γεγονότων(Υπηρεσία_Δείκτη(1)) , ισχνη$(β3)
.Επιτρέπω_Γεγονότα=Αληθής
}
Κάθε 150 {
Αν Χειριστής_Γεγονότων.Παρατήρησε() Τότε Έξοδος
Αν Δείκτης=2 Τότε Έξοδος
}
Δεν υπάρχουν σχόλια:
Δημοσίευση σχολίου
You can feel free to write any suggestion, or idea on the subject.