Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.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 如何使用Tkinker创建字母计数器?_Python_Tkinter - Fatal编程技术网

Python 如何使用Tkinker创建字母计数器?

Python 如何使用Tkinker创建字母计数器?,python,tkinter,Python,Tkinter,我刚开始学习Python,我正试图创建一个矿物计数器,只使用微观岩相学中的字母,但我在将Python代码传递给Tkinker时遇到了问题。你们能给我一些关于如何让我的成果发挥作用的建议吗?我发现即使在在线教程中使用get()方法也很有挑战性 你们能教这个noob吗?谢谢大家! 我的原始代码: #定义样本 sample=“qreqwer” #矿物q: q=“q” countq=样本计数(Q) #q的打印计数 打印(“q的数量为:”,countq) 我用Tkinker制作的结构: from tki

我刚开始学习Python,我正试图创建一个矿物计数器,只使用微观岩相学中的字母,但我在将Python代码传递给Tkinker时遇到了问题。你们能给我一些关于如何让我的成果发挥作用的建议吗?我发现即使在在线教程中使用
get()
方法也很有挑战性

你们能教这个noob吗?谢谢大家!

我的原始代码:

#定义样本
sample=“qreqwer”
#矿物q:
q=“q”
countq=样本计数(Q)
#q的打印计数
打印(“q的数量为:”,countq)
我用Tkinker制作的结构:

from tkinter import *
import tkinter as tk

# Window
window=tk.Tk()
window.title("Mineral Counter")
window.geometry("800x1000")
window.configure(bg="#00090F")

inputUser=tk.Text(window,width=225,height=5,font=("Arial bold",12),wrap="word", bg="#00090F", fg="white")
inputUser.pack()

# define sample

# mineral q:


countq = inputUser.count("q")

# print count of q
output.insert(tk.INSERT,countq)
output=tk.Text(window,width=20,height=2,font=("Arial bold",12), bg="#00090F", fg="white")
output.pack()

window.mainloop()

您需要一个按钮来更新代码,因为最初
文本
框是空的,因此
q
没有出现,因此无法插入任何内容

试试这个:

首先创建一个按钮,该按钮具有在输入数据后单击的功能

b = tk.Button(window, text='Click Me', command=click)
b.pack()
现在定义单击按钮时调用的函数

def click():
    sample = inputUser.get('1.0', 'end-1c') #getting value from text box 1
    mineralq = 'q' #letter to be counted
    countq = sample.count(mineralq) #counting the letter
    output.insert('1.0', f'The quantity of q is: {countq}') #inserting the output to text box 2
希望它消除您的疑虑,如果有任何错误,请告诉我


干杯

一旦
文本
被填充,您必须使用按钮来更新gui,我可以添加答案,但是否有必要使用
文本
,它是否可以改为
条目
小部件?你的文字会那么长吗?我添加了一个更新的答案,不使用
messagebox
,可能是你想要的,请告诉我这个答案是否回答了你的问题?非常感谢你!