teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

コードの追加

2021/07/02 00:17

投稿

hiro04kon
hiro04kon

スコア46

title CHANGED
File without changes
body CHANGED
@@ -47,4 +47,28 @@
47
47
  また、違うデータを読み取ったら再描画したいと考えています。
48
48
 
49
49
  書き方がpythonの時と違ってしまい、戸惑っています。
50
- よろしくお願いします。
50
+ よろしくお願いします。
51
+
52
+ ###訂正後
53
+ 最初は省略
54
+ ```python
55
+ class kvfile(App):
56
+ title = 'チェック表'
57
+
58
+ def build(self):
59
+ layout = GridLayout(cols = yoko)
60
+ id = 0
61
+ for i in range(tate):
62
+ for j in range(yoko):
63
+ id += 1
64
+ layout.add_widget(Button(text=str(id),on_press = lambda n = id : self.buttonClicked(n))
65
+ )
66
+ return layout
67
+
68
+ def buttonClicked(self,instance):
69
+ print(instance,"クリックした")
70
+ instance.enabled = False
71
+
72
+ if __name__ == "__main__":
73
+ kvfile().run()
74
+ ```

1

追記

2021/07/02 00:17

投稿

hiro04kon
hiro04kon

スコア46

title CHANGED
@@ -1,1 +1,1 @@
1
- kivyのGridLayoutで、動的にボタンを配置したい
1
+ python + kivyのGridLayoutで、動的にボタンを配置したい
body CHANGED
@@ -4,6 +4,7 @@
4
4
  ###やりたいこと
5
5
  GridLayoutを用いて指定した数だけボタンを配置し、クリックすると属性をdisableにしたいのです。
6
6
  しかし、以下のコードを書いてみましたが、ボタンが表示されず、真黒な画面にしかなりません。
7
+ layoutを別に定義しないといけないのでしょうか?教えてください。
7
8
 
8
9
 
9
10
  ```kivy