校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 教你如何使用Python Tkinter庫制作記事本

教你如何使用Python Tkinter庫制作記事本

熱門標簽:ai電銷機器人的優勢 南陽打電話機器人 孝感營銷電話機器人效果怎么樣 聊城語音外呼系統 商家地圖標注海報 騰訊地圖標注沒法顯示 海外網吧地圖標注注冊 打電話機器人營銷 地圖標注自己和別人標注區別

Tkinter庫制作記事本

現在為了創建這個記事本,你的系統中應該已經安裝了 Python 3 和 Tkinter。您可以根據系統要求下載合適的python 包。成功安裝 python 后,您需要安裝 Tkinter(一個 Python 的 GUI 包)。

使用此命令安裝 Tkinter :

pip install python-tk

導入 Tkinter :

import tkinter
import os
from tkinter import *
from tkinter.messagebox import *
from tkinter.filedialog import *

注意: messagebox用于在稱為記事本的白框中寫入消息,filedialog用于在您從系統中的任何位置打開文件或將文件保存在特定位置或位置時出現的對話框。

添加菜單:

# Add controls(widget) 
  
self.__thisTextArea.grid(sticky = N + E + S + W) 
  
# To open new file 
self.__thisFileMenu.add_command(label = "New", 
                                command = self.__newFile) 
  
# To open a already existing file 
self.__thisFileMenu.add_command(label = "Open", 
                                command = self.__openFile) 
  
# To save current file 
self.__thisFileMenu.add_command(label = "Save", 
                                command = self.__saveFile) 
  
# To create a line in the dialog 
self.__thisFileMenu.add_separator() 
  
# To terminate 
self.__thisFileMenu.add_command(label = "Exit", 
                                command = self.__quitApplication) 
self.__thisMenuBar.add_cascade(label = "File", 
                               menu = self.__thisFileMenu) 
  
# To give a feature of cut 
self.__thisEditMenu.add_command(label = "Cut", 
                                command = self.__cut) 
  
# To give a feature of copy 
self.__thisEditMenu.add_command(label = "Copy", 
                                command = self.__copy) 
  
# To give a feature of paste 
self.__thisEditMenu.add_command(label = "Paste", 
                                command = self.__paste) 
  
# To give a feature of editing 
self.__thisMenuBar.add_cascade(label = "Edit", 
                               menu = self.__thisEditMenu) 
  
# To create a feature of description of the notepad 
self.__thisHelpMenu.add_command(label = "About Notepad", 
                                command = self.__showAbout) 
self.__thisMenuBar.add_cascade(label = "Help", 
                               menu = self.__thisHelpMenu) 
  
self.__root.config(menu = self.__thisMenuBar) 
  
self.__thisScrollBar.pack(side = RIGHT, fill = Y) 
  
# Scrollbar will adjust automatically 
# according to the content 
self.__thisScrollBar.config(command = self.__thisTextArea.yview) 
self.__thisTextArea.config(yscrollcommand = self.__thisScrollBar.set) 

使用此代碼,我們將在記事本的窗口中添加菜單,并向其中添加復制、粘貼、保存等內容。

添加功能:

def __quitApplication(self): 
    self.__root.destroy() 
    # exit() 
  
def __showAbout(self): 
    showinfo("Notepad", "Mrinal Verma") 
  
def __openFile(self): 
          
    self.__file = askopenfilename(defaultextension=".txt", 
                                  filetypes=[("All Files","*.*"), 
                                      ("Text Documents","*.txt")]) 
  
    if self.__file == "": 
  
        # no file to open 
        self.__file = None
    else: 
        # try to open the file 
        # set the window title 
        self.__root.title(os.path.basename(self.__file) + " - Notepad") 
        self.__thisTextArea.delete(1.0,END) 
  
        file = open(self.__file,"r") 
  
        self.__thisTextArea.insert(1.0,file.read()) 
  
        file.close() 
  
          
def __newFile(self): 
    self.__root.title("Untitled - Notepad") 
    self.__file = None
    self.__thisTextArea.delete(1.0,END) 
  
def __saveFile(self): 
  
    if self.__file == None: 
        #save as new file 
        self.__file = asksaveasfilename(initialfile='Untitled.txt', 
                                        defaultextension=".txt", 
                                        filetypes=[("All Files","*.*"), 
                                            ("Text Documents","*.txt")]) 
  
        if self.__file == "": 
            self.__file = None
        else: 
              
            # try to save the file 
            file = open(self.__file,"w") 
            file.write(self.__thisTextArea.get(1.0,END)) 
            file.close() 
            # change the window title 
            self.__root.title(os.path.basename(self.__file) + " - Notepad") 
                  
              
    else: 
        file = open(self.__file,"w") 
        file.write(self.__thisTextArea.get(1.0,END)) 
        file.close() 
  
def __cut(self): 
    self.__thisTextArea.event_generate("Cut>>") 
  
def __copy(self): 
    self.__thisTextArea.event_generate("Copy>>") 
  
def __paste(self): 
    self.__thisTextArea.event_generate("Paste>>") 

在這里,我們添加了記事本中所需的所有功能,您也可以添加其他功能,例如字體大小、字體顏色、粗體、下劃線等。

合并后的主要代碼:

import tkinter
import os
from tkinter import *
from tkinter.messagebox import *
from tkinter.filedialog import *
 
 
class Notepad:
    __root = Tk()
 
    # default window width and height
    __thisWidth = 300
    __thisHeight = 300
    __thisTextArea = Text(__root)
    __thisMenuBar = Menu(__root)
    __thisFileMenu = Menu(__thisMenuBar, tearoff=0)
    __thisEditMenu = Menu(__thisMenuBar, tearoff=0)
    __thisHelpMenu = Menu(__thisMenuBar, tearoff=0)
 
    # To add scrollbar
    __thisScrollBar = Scrollbar(__thisTextArea)
    __file = None
 
    def __init__(self, **kwargs):
 
        # Set icon
        try:
            self.__root.wm_iconbitmap("Notepad.ico")
        except:
            pass
 
        # Set window size (the default is 300x300)
 
        try:
            self.__thisWidth = kwargs['width']
        except KeyError:
            pass
 
        try:
            self.__thisHeight = kwargs['height']
        except KeyError:
            pass
 
        # Set the window text
        self.__root.title("Untitled - Notepad")
 
        # Center the window
        screenWidth = self.__root.winfo_screenwidth()
        screenHeight = self.__root.winfo_screenheight()
 
        # For left-alling
        left = (screenWidth / 2) - (self.__thisWidth / 2)
 
        # For right-allign
        top = (screenHeight / 2) - (self.__thisHeight / 2)
 
        # For top and bottom
        self.__root.geometry('%dx%d+%d+%d' % (self.__thisWidth,
                                              self.__thisHeight,
                                              left, top))
 
        # To make the textarea auto resizable
        self.__root.grid_rowconfigure(0, weight=1)
        self.__root.grid_columnconfigure(0, weight=1)
 
        # Add controls (widget)
        self.__thisTextArea.grid(sticky=N + E + S + W)
 
        # To open new file
        self.__thisFileMenu.add_command(label="New",
                                        command=self.__newFile)
 
        # To open a already existing file
        self.__thisFileMenu.add_command(label="Open",
                                        command=self.__openFile)
 
        # To save current file
        self.__thisFileMenu.add_command(label="Save",
                                        command=self.__saveFile)
 
        # To create a line in the dialog
        self.__thisFileMenu.add_separator()
        self.__thisFileMenu.add_command(label="Exit",
                                        command=self.__quitApplication)
        self.__thisMenuBar.add_cascade(label="File",
                                       menu=self.__thisFileMenu)
 
        # To give a feature of cut
        self.__thisEditMenu.add_command(label="Cut",
                                        command=self.__cut)
 
        # to give a feature of copy
        self.__thisEditMenu.add_command(label="Copy",
                                        command=self.__copy)
 
        # To give a feature of paste
        self.__thisEditMenu.add_command(label="Paste",
                                        command=self.__paste)
 
        # To give a feature of editing
        self.__thisMenuBar.add_cascade(label="Edit",
                                       menu=self.__thisEditMenu)
 
        # To create a feature of description of the notepad
        self.__thisHelpMenu.add_command(label="About Notepad",
                                        command=self.__showAbout)
        self.__thisMenuBar.add_cascade(label="Help",
                                       menu=self.__thisHelpMenu)
 
        self.__root.config(menu=self.__thisMenuBar)
 
        self.__thisScrollBar.pack(side=RIGHT, fill=Y)
 
        # Scrollbar will adjust automatically according to the content
        self.__thisScrollBar.config(command=self.__thisTextArea.yview)
        self.__thisTextArea.config(yscrollcommand=self.__thisScrollBar.set)
 
    def __quitApplication(self):
        self.__root.destroy()
        # exit()
 
    def __showAbout(self):
        showinfo("Notepad", "Mrinal Verma")
 
    def __openFile(self):
 
        self.__file = askopenfilename(defaultextension=".txt",
                                      filetypes=[("All Files", "*.*"),
                                                 ("Text Documents", "*.txt")])
 
        if self.__file == "":
 
            # no file to open
            self.__file = None
        else:
 
            # Try to open the file
            # set the window title
            self.__root.title(os.path.basename(self.__file) + " - Notepad")
            self.__thisTextArea.delete(1.0, END)
 
            file = open(self.__file, "r")
 
            self.__thisTextArea.insert(1.0, file.read())
 
            file.close()
 
    def __newFile(self):
        self.__root.title("Untitled - Notepad")
        self.__file = None
        self.__thisTextArea.delete(1.0, END)
 
    def __saveFile(self):
 
        if self.__file == None:
            # Save as new file
            self.__file = asksaveasfilename(initialfile='Untitled.txt',
                                            defaultextension=".txt",
                                            filetypes=[("All Files", "*.*"),
                                                       ("Text Documents", "*.txt")])
 
            if self.__file == "":
                self.__file = None
            else:
 
                # Try to save the file
                file = open(self.__file, "w")
                file.write(self.__thisTextArea.get(1.0, END))
                file.close()
 
                # Change the window title
                self.__root.title(os.path.basename(self.__file) + " - Notepad")
 
 
        else:
            file = open(self.__file, "w")
            file.write(self.__thisTextArea.get(1.0, END))
            file.close()
 
    def __cut(self):
        self.__thisTextArea.event_generate("Cut>>")
 
    def __copy(self):
        self.__thisTextArea.event_generate("Copy>>")
 
    def __paste(self):
        self.__thisTextArea.event_generate("Paste>>")
 
    def run(self):
 
        # Run main application
        self.__root.mainloop()
 
    # Run main application
 
 
notepad = Notepad(width=600, height=400)
notepad.run()

要運行此代碼,請使用擴展名.py保存它,然后打開 cmd(命令提示符)并移動到保存文件的位置,然后編寫以下內容

python "filename".py 

然后按回車,它就會運行?;蛘呖梢酝ㄟ^簡單地雙擊您的.py擴展文件直接運行。

到此這篇關于教你如何使用Python Tkinter庫制作記事本的文章就介紹到這了,更多相關Tkinter庫制作記事本內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python實戰之用tkinter庫做一個鼠標模擬點擊器
  • 使用Python中tkinter庫簡單gui界面制作及打包成exe的操作方法(二)
  • python tkinter庫實現氣泡屏保和鎖屏
  • python自帶tkinter庫實現棋盤覆蓋圖形界面
  • python使用tkinter庫實現五子棋游戲
  • Python使用tkinter庫實現文本顯示用戶輸入功能示例
  • python基于Tkinter庫實現簡單文本編輯器實例

標簽:迪慶 揚州 聊城 牡丹江 六盤水 撫州 楊凌 南寧

巨人網絡通訊聲明:本文標題《教你如何使用Python Tkinter庫制作記事本》,本文關鍵詞  教你,如何,使用,Python,Tkinter,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《教你如何使用Python Tkinter庫制作記事本》相關的同類信息!
  • 本頁收集關于教你如何使用Python Tkinter庫制作記事本的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    欧美精品丝袜中出| 久久国内精品自在自线400部| 伊人婷婷欧美激情| 午夜精品视频在线观看| 一区二区三区在线免费视频| 欧美xxxxxxxx| 欧美性欧美巨大黑白大战| 欧美综合视频在线观看| 亚洲电影视频在线| 久久免费午夜影院| 欧美一区二区三区日韩视频| 91精品国产麻豆国产自产在线 | 欧美久久一二三四区| 国产成人亚洲综合色影视| 久草在线在线精品观看| 国产91在线观看丝袜| 91丨porny丨国产入口| 欧美高清性hdvideosex| 久久精品在线免费观看| 久久嫩草精品久久久精品一| 天天操天天干天天综合网| 麻豆一区二区三区| 国内精品视频一区二区三区八戒 | 国产剧情av麻豆香蕉精品| 欧美喷水一区二区| 日韩专区中文字幕一区二区| 在线电影国产精品| 亚洲风情在线资源站| 91老师片黄在线观看| 丝袜美腿亚洲一区二区图片| 日韩精品中文字幕一区二区三区| 精彩视频一区二区三区| 国产精品毛片久久久久久| 欧美午夜不卡在线观看免费| 亚洲综合区在线| 九一久久久久久| 99国产精品一区| 久久久不卡网国产精品一区| 麻豆精品在线视频| 欧美三级电影网站| 久久一二三国产| 久久久亚洲精品石原莉奈 | 久久99最新地址| 国产综合色产在线精品| 国产精品久线观看视频| 蜜臀av一区二区在线观看| 久久久91精品国产一区二区精品| 亚洲欧洲av一区二区三区久久| 欧美欧美欧美欧美| 91在线精品一区二区三区| 一区二区三区电影在线播| 欧美成人在线直播| 成人av在线资源网| 韩国三级在线一区| 五月天视频一区| 一区二区三区四区乱视频| 欧美—级在线免费片| 精品国产凹凸成av人导航| 91麻豆123| k8久久久一区二区三区| 国产69精品久久777的优势| 麻豆精品一区二区三区| 亚洲国产一区在线观看| 亚洲色图第一区| 成人欧美一区二区三区黑人麻豆 | 成人av网址在线观看| 久久97超碰色| 久久99精品久久久久婷婷| 免费不卡在线视频| 久久国产精品区| 麻豆成人久久精品二区三区红 | 久国产精品韩国三级视频| 欧美日韩国产乱码电影| wwwwww.欧美系列| 欧美一级黄色录像| 欧美日本一区二区在线观看| 久久99精品久久久| 91精品免费在线观看| 色诱亚洲精品久久久久久| 日韩和欧美一区二区| 亚洲精品中文字幕在线观看| 国产欧美日本一区二区三区| 久88久久88久久久| 精品一区二区国语对白| 1024成人网色www| 国产精品成人在线观看| eeuss鲁片一区二区三区| 亚洲激情六月丁香| 91精品久久久久久久99蜜桃| 美女视频一区二区| 久久久国产一区二区三区四区小说| 另类小说综合欧美亚洲| 日韩专区中文字幕一区二区| 亚洲精品网站在线观看| 亚洲欧美日本韩国| 亚洲男帅同性gay1069| 中文成人av在线| 国产精品久久久久久亚洲毛片 | 成人高清伦理免费影院在线观看| 亚洲1区2区3区视频| 免费一区二区视频| 亚洲欧洲成人自拍| 欧美一级日韩免费不卡| 在线观看日韩电影| 欧美另类z0zxhd电影| 国产亚洲一区二区在线观看| 国产一区二区看久久| 久久色视频免费观看| 欧美日韩国产天堂| 精品国产一区二区三区久久影院 | 成人深夜在线观看| 亚洲成av人片在线观看| 国产精品欧美极品| www.久久精品| 亚洲黄色小视频| 麻豆精品新av中文字幕| 免费观看一级欧美片| 91小视频免费观看| 国产精品久久综合| 日本精品一区二区三区高清 | 亚洲国产精品久久一线不卡| 中文字幕一区二区日韩精品绯色| 精品国一区二区三区| 亚洲精品成人天堂一二三| 麻豆精品视频在线观看免费| 国产一区二区三区国产| 日韩欧美国产一区二区三区 | 狠狠色丁香久久婷婷综| 欧美在线综合视频| 性久久久久久久| 欧美三级三级三级| 国产精品久久久久久久久果冻传媒 | 亚洲精品久久久蜜桃| 美美哒免费高清在线观看视频一区二区| 成人高清在线视频| 欧美韩日一区二区三区四区| 国产suv精品一区二区883| 欧美日韩午夜精品| 日韩经典一区二区| 国模无码大尺度一区二区三区| www.性欧美| 欧美美女一区二区| 国产精品国产三级国产aⅴ原创| 亚洲在线观看免费| 99久久精品免费| 国产精品久久久久一区二区三区| 亚洲蜜桃精久久久久久久| 成人美女视频在线观看| 亚洲男帅同性gay1069| 国产美女视频一区| 亚洲精品videosex极品| 色综合久久久久久久久| 一区二区三区不卡视频| 欧美视频一区二区| 亚洲欧洲精品天堂一级| 欧美日韩一区二区在线视频| 国产成人精品亚洲日本在线桃色| 51午夜精品国产| 亚洲一区二区四区蜜桃| 一区二区三区波多野结衣在线观看| 国产成人超碰人人澡人人澡| 日韩欧美国产wwwww| 亚洲午夜精品久久久久久久久| av电影在线观看一区| 中文字幕免费不卡在线| 国产精品综合一区二区| 久久久青草青青国产亚洲免观| 麻豆国产欧美日韩综合精品二区| 欧美高清视频www夜色资源网| 亚洲资源在线观看| 欧美日韩中文字幕精品| 亚洲大片精品永久免费| 91久久精品网| 五月激情综合色| 欧美一区二区二区| 美国三级日本三级久久99| 精品久久久久久无| 精品一二线国产| 国产亚洲美州欧州综合国| 国产精品一区二区男女羞羞无遮挡| 精品美女一区二区| 丁香激情综合国产| 国产精品萝li| 91国偷自产一区二区开放时间 | 不卡av在线免费观看| 日韩国产欧美三级| 亚洲人成在线播放网站岛国| 日韩午夜中文字幕| 欧美精品久久一区二区三区| 91免费版pro下载短视频| 久久国产精品99精品国产| 一区二区三区免费在线观看| 欧美激情一区不卡| 久久午夜羞羞影院免费观看| 91精品蜜臀在线一区尤物| 国产美女久久久久| 麻豆精品一二三| 国产综合色在线视频区| 美女一区二区三区在线观看| 亚洲综合男人的天堂|