在为网格创建单个文件时创建单个逻辑时发出问题。使用kivy进行数独谜题的2x2,4x4和6x6网格
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在为网格创建单个文件时创建单个逻辑时发出问题。使用kivy进行数独谜题的2x2,4x4和6x6网格相关的知识,希望对你有一定的参考价值。
使用kivy为Sudoku拼图创建单个文件2x2,4x4和6x6网格时创建单个逻辑时出现问题。框也应该从用户那里获取输入,但不能动态改变。
class SudokuGrid(GridLayout):
def __init__(self, **kwargs):
super(SudokuGrid, self).__init__(**kwargs)
self.spacing = (5, 5)
for row in range(self.rows):
for col in range(self.cols):
self.add_widget(SudokuGridCell())
样本类继续进行。
** SudokuGridCell的内置文件:Class **
class SudokuGridCell(AnchorLayout):
pass
Builder.load_string('''
<SudokuCell@AnchorLayout>:
anchor_x: 'center'
anchor_y: 'center'
canvas:
Color:
rgb: .6, .6, .6
Rectangle:
pos: self.pos
size: self.size
TextInput:
multiline: False
size_hint: (0.2, 0.2)
text: '23'
''')
答案
我不应该这样做,但这里有一个让你入门的例子:
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.anchorlayout import AnchorLayout
from kivy.uix.gridlayout import GridLayout
class SudokuCell(AnchorLayout):
pass
Builder.load_string('''
<SudokuCell@AnchorLayout>:
anchor_x: 'center'
anchor_y: 'center'
canvas:
Color:
rgb: .6, .6, .6
Rectangle:
pos: self.pos
size: self.size
TextInput:
multiline: False
size_hint: (0.2, 0.2)
text: '23'
''')
class SudokuGrid(GridLayout):
def __init__(self, **kwargs):
super(SudokuGrid, self).__init__(**kwargs)
self.spacing = (3, 3)
for row in range(self.rows):
for col in range(self.cols):
self.add_widget(SudokuCell())
class SudokuApp(App):
def build(self):
return SudokuGrid(rows=4, cols=4)
if __name__ == '__main__':
SudokuApp().run()
以上是关于在为网格创建单个文件时创建单个逻辑时发出问题。使用kivy进行数独谜题的2x2,4x4和6x6网格的主要内容,如果未能解决你的问题,请参考以下文章
Extjs 4,如何使用单个 Json 文件为多个动态网格发送多个元数据