Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 运行时已选择tkinter中的单选按钮_Python_User Interface_Tkinter_Tk - Fatal编程技术网

Python 运行时已选择tkinter中的单选按钮

Python 运行时已选择tkinter中的单选按钮,python,user-interface,tkinter,tk,Python,User Interface,Tkinter,Tk,我正在尝试用python创建一个应用程序。大多数情况下,除第一个单选按钮外的所有单选按钮都已选中,并且在悬停后选择了第一个单选按钮。请注意,这种情况10次中有9次会发生,而且一旦它按预期工作 代码包括在下面。 编辑:代码重新加载。我想它在复制粘贴过程中坏了。对不起 import sys from Tkinter import * i = 0 #for i in range(0, 10): # print i macro_sheet_names = [1, 2, 3, 4] print

我正在尝试用python创建一个应用程序。大多数情况下,除第一个单选按钮外的所有单选按钮都已选中,并且在悬停后选择了第一个单选按钮。请注意,这种情况10次中有9次会发生,而且一旦它按预期工作

代码包括在下面。 编辑:代码重新加载。我想它在复制粘贴过程中坏了。对不起

import sys
from Tkinter import *

i = 0
#for i in range(0, 10):
#    print i

macro_sheet_names = [1, 2, 3, 4]
print len(macro_sheet_names)

root = Tk()
var = IntVar()

def sel():
    selection = "You selected the option " + str(var.get())
    label.config(text = selection)
    print ('Tab selected: ' + str(var.get()))
    root.destroy()
#   sys.exit()
#   root.withdraw()

i = 0
for i in range (0, len(macro_sheet_names)):
    R = Radiobutton(root, text = macro_sheet_names[i], variable = var, value = i, command = sel)
    R.pack(anchor = W)


label = Label(root)
label.pack()
root.mainloop()

print ('Exiting...')
sys.exit()

对我来说,它可以在修改后的Python3上工作。试试这个:

import sys
from Tkinter import *

i = 0
#for i in range(0, 10):
#    print i

macro_sheet_names = [1, 2, 3, 4]
print (len(macro_sheet_names))

root = Tk()
var = IntVar()

def sel():
    selection = "You selected the option " + str(var.get())
    label.config(text = selection)
    print ('Tab selected: ' + str(var.get()))
    root.destroy()
    #   sys.exit()
    #   root.withdraw()

i = 0
for i in range (0, len(macro_sheet_names)):
    R = Radiobutton(root, text = macro_sheet_names[i], variable = var, value = i, command = sel)
    if i == 0: R.select ()
    R.pack(anchor = W)


label = Label(root)
label.pack()
root.mainloop()

print ('Exiting...')
sys.exit()

它只是自动选择第一个收音机框。

您的缩进已关闭-请修复它。这很奇怪。一旦我修复了缩进错误,代码就会按照我的预期运行。您是直接在终端中运行它,还是在空闲或其他IDE中运行它?嗨,修复了问题中的缩进。仍然以相同的方式运行。为什么不使用
var.set(0)
?嘿,这很有效!虽然程序在大多数情况下不会通过打印“退出…”退出。你能帮我找出哪里不对劲吗?很难说你变了什么。你介意解释一下吗?添加了一行if i==0:R.select(),我从未使用过EnThound Canopy,但你可能想尝试在“sys.exit”、“import time.sleep(0.1)”之前添加。这只需等待十分之一秒即可退出。这不会有什么不同,但值得一试。