- Tkinter GUI Application Development Blueprints(Second Edition)
- Bhaskar Chaudhary
- 223字
- 2021-06-24 18:35:13
The number of units and beats per unit features
We earlier coded the matrix called create_right_button_matrix, which creates a two-dimensional matrix with the number of rows equal to MAX_NUMBER_OF_DRUM_SAMPLES. The number of columns would be decided by multiplying the number of units by the beats per unit values selected by the end user. Its formula can be given as follows:
Number of columns of buttons = Number of units x BPU

This means that every time the user changes the number of units or the beats per unit, the button matrix should be redrawn to change the number of columns. This change should also be reflected in our underlying data structure. Let's add this feature to our drum machine.
We had earlier defined two dummy methods—on_number_of_units_changed() and on_bpu_changed(). We modify them now as follows (see code 3.04.py):
def on_number_of_units_changed(self):
self.set_number_of_units()
self.set_is_button_clicked_list(MAX_NUMBER_OF_DRUM_SAMPLES,
self.find_number_of_columns())
self.create_right_button_matrix()
def on_bpu_changed(self):
self.set_bpu()
self.set_is_button_clicked_list(MAX_NUMBER_OF_DRUM_SAMPLES,
self.find_number_of_columns())
self.create_right_button_matrix()
The preceding methods do two things:
- Modify the data structure to reflect the changes in BPU or number of units
- Call the create_right_button_matrix() method to recreate the button matrix
Now if you go and run the code (see code 3.04.py) and change either the values of number of units or BPU, the button matrix should redraw itself to reflect the change.
- Learning Neo4j
- GitLab Repository Management
- Yocto for Raspberry Pi
- Python數據分析從0到1
- Java Web程序設計任務教程
- Microsoft Azure Storage Essentials
- 好好學Java:從零基礎到項目實戰
- 搞定J2EE:Struts+Spring+Hibernate整合詳解與典型案例
- Python Data Science Cookbook
- Spring Boot+MVC實戰指南
- PrimeFaces Blueprints
- SQL Server 入門很輕松(微課超值版)
- 高效使用Greenplum:入門、進階與數據中臺
- HTML并不簡單:Web前端開發精進秘籍
- 大話代碼架構:項目實戰版