用Tkinter打造GUI開發工具(44)Tkinter接管input輸入語句

用Tkinter打造GUI開發工具(44)Tkinter接管input輸入語句
在前面博客介紹了用Tkinter做Python編輯器,我們看到可以運行Python代碼,問題是,代碼輸入信息從哪裏輸入?如果沒有在Python編輯器中,我們無法進行輸入信息。
因此我們需要在程序中獲取input語句輸入權限,把這個輸入權限轉移給Tkinter的文本輸入對話框。
小白量化框架在HP_tk模塊已經提供了現成的功能,用戶只需要使用就可以了。
下面直接給出演示代碼,其中有詳細註釋。

#小白量化用戶Python代碼編輯器,輸入演示
#獨狼荷蒲qq:2886002
#通通小白python量化羣:524949939
#微信公衆號:獨狼股票分析
import  tkinter  as  tk   #導入Tkinter
import  HP_tk  as  htk   #導入htk

root=tk.Tk()
root.title('Tkinter的input輸入演示')
root.geometry('{}x{}+{}+{}'.format(300,200,100,100))

#創建輸入輸出控制權對象myconsole
myconsole=htk.console2()

#獲取系統輸入input/輸出print權
#接管print()函數和保存系統input語句
myconsole.SwitchOut2(sw=True)
#改變input語句爲myconsole.MyInput
input=myconsole.MyInput

#第1次輸入
x=input('請輸入:')

#釋放print權利給Python系統,同時返回text輸出信息
s2=myconsole.SwitchOut2(sw=False)
print(s2)
print('第一次輸入的內容:',x)

#恢復系統input語句
input=myconsole.sysinput

#第2次輸入
x2=input('請輸入2:')
print('第二次輸入的內容2:',x2)

root.mainloop()

程序運行後,出現輸入窗口。
在這裏插入圖片描述
我們輸入"123"後,點[ok]按鈕輸入文本信息。
恢復Python系統的input語句控制權後,第二次需要在Python編輯器中輸入信息"456".
在Spyder信息框運行的結果如下:

runfile('D:/xb2/小白量化輸入演示.py', wdir='D:/xb2')
Reloaded modules: HP_tk

第一次輸入的內容: 123

請輸入2:456
第二次輸入的內容2: 456

通過閱讀我最近寫的幾篇博客,是不是感覺自己編寫一個 Python代碼編輯器非常簡單。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章