初学者Python键盘GUI设置

时间:2016-07-06 17:08:01

标签: python user-interface tkinter keyboard

我在Python 3.5中开始GUI,我正在尝试设置一个简单的qwerty键盘。基于这些示例,我尝试了以下代码

from tkinter import Tk, Label, RAISED, Button, Entry

self.window = Tk()

    #Keyboard
    labels = [['q','w','e','r','t','y','u','i','o','p'],
                 ['a','s','d','f','g','h','j','k','l'],
                 ['z','x','c','v','b','n','m','<']]

    n = 10
    for r in range(3):
        for c in range(n):
            n -= 1
            label = Label(self.window,
                              relief=RAISED,
                              text=labels[r][c])
            label.grid(row=r,column=c)
            continue

这给了我第一行,但它没有返回任何其他内容。我尝试使用10作为范围,它创建了键盘的前两行,但它仍然没有继续到最后一行。

2 个答案:

答案 0 :(得分:1)

您的问题在n -= 1行。每次创建标签时,都会使n少一个 - 在第一整行n==0之后,因此范围为0> 0,并且范围从不包括高限 - {{1}将从循环中删除(因为它循环遍历所有不存在的内容)。

更好的解决方案是迭代遍历列表而不是通过索引 - for c in range(0)循环取任何可迭代的(列表,字典,范围,生成器,集合和&amp; c。);

for

答案 1 :(得分:0)

这是你想要的吗?如果您需要我进一步解释,请告诉我,但基本上我正在做的是先填写每一行的列。所以行保持为0然后当我遍历列(内部列表)时,我填写每个键,然后到下一行等等。

com.orientechnologies.orient.core.command.OCommandExecutorNotFoundException