用户:
伴雪纷飞查看:42 回复:30 评论:42 创建时间:2021-06-07T16:51:27
喵?
保护你我他眼睛,
防喵软件得更新。
先来茶一口
高能走一走

欢迎意见,不要留恋(意见)
往 https://shequ.codemao.cn/community/379913
-------------doge-------------
python
from tkinter import *
from tkinter.scrolledtext import ScrolledText
def Shielding(content):
return b'\xe2\x80\xaa'.decode(
'UTF-8').join([i for i in content])
def _write():
st2['state'] = NORMAL
st2.delete(0.0, "end")
print(st.get('0.0', 'end'))
print(Shielding(st.get('0.0', 'end')))
st2.insert(0.0, Shielding(st.get('0.0', 'end')))
st2['state'] = DISABLED
def copy():
st2['state'] = NORMAL
st2.event_generate('<<Copy>>')
st2['state'] = DISABLED
def main():
win = Tk()
win.title('防喵工具')
win.resizable(width=False, height=False)
win.wm_attributes('-topmost', 0)
Label(win, text='内\n容', font=(10)).grid(row=0, column=0, rowspan=3)
st = ScrolledText(win, height=10,width=20)
st.grid(row=0, column=1, columnspan=3, rowspan=3)
Label(win, text='转\n换', font=(10)).grid(row=4, column=0, rowspan=3)
st2 = ScrolledText(win, height=10, width=20, state=DISABLED)
st2.grid(row=4, column=1, columnspan=3, rowspan=3)
Button(win, text='转换', command=_write, width=10,
height=6).grid(row=0, column=5, rowspan=4)
Button(win, text='复制 选中状态', command=copy, width=10,
height=3).grid(row=5, column=5, rowspan=1)
Button(win, text='退出', command=exit, width=10,
height=3).grid(row=6, column=5, rowspan=1)
mainloop()
#print(Shielding(input()))
if __name__=='__main__':
main()
伴雪纷飞↑代码有点问题,此处修改版
from tkinter import *
from tkinter.scrolledtext import ScrolledText
def Shielding(content):
return b'\xe2\x80\xaa'.decode(
'UTF-8').join([i for i in content])
def _write():
global st2
st2['state'] = NORMAL
st2.delete(0.0, "end")
print(st.get('0.0', 'end'))
print(Shielding(st.get('0.0', 'end')))
st2.insert(0.0, Shielding(st.get('0.0', 'end')))
st2['state'] = DISABLED
def copy():
st2['state'] = NORMAL
st2.event_generate('<<Copy>>')
st2['state'] = DISABLED
if __name__=='__main__':
win = Tk()
win.title('防喵工具')
win.resizable(width=False, height=False)
win.wm_attributes('-topmost', 0)
Label(win, text='内\n容', font=(10)).grid(row=0, column=0, rowspan=3)
st = ScrolledText(win, height=10,width=20)
st.grid(row=0, column=1, columnspan=3, rowspan=3)
Label(win, text='转\n换', font=(10)).grid(row=4, column=0, rowspan=3)
st2 = ScrolledText(win, height=10, width=20, state=DISABLED)
st2.grid(row=4, column=1, columnspan=3, rowspan=3)
Button(win, text='转换', command=_write, width=10,
height=6).grid(row=0, column=5, rowspan=4)
Button(win, text='复制 选中状态', command=copy, width=10,
height=3).grid(row=5, column=5, rowspan=1)
Button(win, text='退出', command=exit, width=10,
height=3).grid(row=6, column=5, rowspan=1)
mainloop()点赞0
评论
伴雪纷飞哎呀嘛,重构一下代码吧
from tkinter import *
from tkinter import messagebox
from tkinter.scrolledtext import ScrolledText
# 导入库文件
class Ui(Frame):
# 定义类(YouLikeMe)、继承于 Frame 框架 (虚拟的矩形框架)
def __init__(self, master=None):
# 定义构造函数、并初始化父类为空
super().__init__(master)
# 通过 super() 调用父类、并将 master 传进去
self.master = master
# 令此类中的 master 等于传入的 window
self.grid()
# 布局此窗口
self.CreateWidget()
# 调用另一个函数 CreateWidget
def Shielding(self,content):
return b'\xe2\x80\xaa'.decode(
'UTF-8').join([i for i in content])
def _write(self):
st2=self.st2
st2['state'] = NORMAL
st2.delete(0.0, "end")
print(self.st.get('0.0', 'end'))
print(self.Shielding(self.st.get('0.0', 'end')))
st2.insert(0.0, self.Shielding(self.st.get('0.0', 'end')))
st2['state'] = DISABLED
def copy(self):
st2['state'] = NORMAL
st2.event_generate('<<Copy>>')
st2['state'] = DISABLED
def CreateWidget(self):
"""
用途:创建组件
"""
win=self.master
win.resizable(width=False, height=False)
win.wm_attributes('-topmost', 0)
Label(win, text='内\n容', font=(10)).grid(row=0, column=0, rowspan=3)
self.st = ScrolledText(win, height=10, width=20)
self.st.grid(row=0, column=1, columnspan=3, rowspan=3)
Label(win, text='转\n换', font=(10)).grid(row=4, column=0, rowspan=3)
self.st2 = ScrolledText(win, height=10, width=20, state=DISABLED)
self.st2.grid(row=4, column=1, columnspan=3, rowspan=3)
Button(win, text='转换', command=self._write, width=10,
height=6).grid(row=0, column=5, rowspan=4)
Button(win, text='复制 选中状态', command=self.copy, width=10,
height=3).grid(row=5, column=5, rowspan=1)
Button(win, text='退出', command=exit, width=10,
height=3).grid(row=6, column=5, rowspan=1)
mainloop()
if __name__ == "__main__":
win = Tk()
win.title('防喵工具')
app = Ui(master=win)
# 调用新创建的类、并进行初始化、将 master = window (主窗口)传递进去
win.mainloop()
# 调用 mainloop 方法、启用窗口并进入事件循环点赞0
评论
坚强的象牙螺0A9mException in Tkinter callback
Traceback (most recent call last):
File "C:\Pyblock\resources\app\Python-win喵\lib\tkinter\__init__.py", line 1702, in __call__
return self.func(*args)
File "E:\PyFiles\fromcc\防喵软件(ui版).py", line 36, in copy
st2['state'] = NORMAL
NameError: name 'st2' is not defined
点赞0
评论