1. 程式人生 > >Python-GUI程式設計之 Tkinter 與 記事本實現心得

Python-GUI程式設計之 Tkinter 與 記事本實現心得

在這裡介紹一下tkinter和我的記事本,同時分享一些方便自學python的網站

引用一句老外的話讓自己顯得高大上一些:

MythDebunking: TkInter is ugly on Windows (http://wiki.tcl.tk/8646)

瞧瞧我剛寫的記事本。。。

這裡寫圖片描述

好像確實是這樣的。。。其實記事本是按教程一步一步寫的,大概知道了圖形介面是如何一步一步搭框架,寫功能的了。

正文:

百度描述

Tkinter模組(“Tk 介面”)是Python的標準Tk GUI工具包的介面.Tk和Tkinter可以在大多數的Unix平臺下使用,同樣可以應用在Windows和Macintosh系統裡.Tk8.0的後續版本可以實現本地視窗風格,並良好地執行在絕大多數平臺中。

具體還有什麼特點就不羅列了,學習最好的途徑是官網,給幾個官方網站:

ps:我原來也不知道有effbot這個東西,一開始都是矇蔽的,想了解可以瞧瞧官網,開啟的頁面就說明了幹啥的:

Tkinter有15個核心的控制元件:
1、Button
2、Canvas
3、Checkbutton
4、Entry
5、Frame
6、Label
7、Listbox
……還有選單啊,text文字顯示啊什麼的若干控制元件,而我好像寫一個記事本軟體也沒有用完,說明這15個控制元件,足夠自己寫一些小小的應用軟體了,當然大點的還是用其它的吧,我現在只知道還有個pyQT什麼的,不過現在還不會,以後再說吧。

記事本:

記事本用到的控制元件有:
1、Menu
2、statusBar
3、Text
4、tkMessageBox #4、5這兩個控制元件要額外引入
5、tkFileDialog #
6、Toplevel
7、Toolbar(這個。。太醜了後面把它去掉了)

使用的庫:

#由於python2和python3版本對應的一些庫做了改動,引用時有一些不同,不過
#具體使用時還是一樣的

#python3 引用方式:
from tkinter import *
from tkinter.messagebox import * #訊息視窗,彈出一些資訊
from tkinter.filedialog import
* #檔案視窗 import os #操作檔案 #python2 引用方式: from Tkinter import * from tkMessageBox import * #訊息視窗,彈出一些資訊 from tkFileDialog import * #檔案視窗 import os #操作檔案

tkinter.messagebox:標準的訊息視窗,以文字小視窗形式彈出一些資訊。

tkinter.filedialog:開啟檔案、另存檔案等操作時會像windows一樣彈出視窗。

還有一個比較重要的:
像Cut,Copy等操作是沒有庫的,它是使用系統級別的事件訊息,具體說明可以參考這裡,Tkinter裡好難找的,我找了一下(好吧,很久)沒找到,又回頭看了看視訊教程裡面是怎麼說的(怪我沒認真看咯),結果。。。人家說這是系統級事件,他也找了很久(心裡平衡了),最後谷歌到的(百度沒找到),說要在官方原始碼庫說明裡面才找到……
比如我要複製:textPad.event_generate('<<Copy>>')
貼上呢,這樣:textPad.event_generate('<<Paste>>')
就是用 ‘<<操作>>’ 這樣的格式就可以了,裡面就是需要的操作,不難

使用一些快捷鍵什麼的可能會用到這些,因為我弄的這個記事本沒新增快捷鍵功能,沒用過,就看了看,

在這裡分享的是如何查詢詳細的使用方法–>effbot,全都是關於python庫的一些書,只不過都是英文的,英語不太好的我看起來有點累,不過看多了慢慢會適應。
以上。

相關推薦

Python-GUI程式設計 Tkinter 記事本實現心得

在這裡介紹一下tkinter和我的記事本,同時分享一些方便自學python的網站 引用一句老外的話讓自己顯得高大上一些: MythDebunking: TkInter is ugly on Windows (http://wiki.tcl.tk/864

Python GUI程式設計tkinter入門案例--簡單的自動檔案下載器

利用Python3.6開發了一個簡易版的檔案批量下載軟體demo,使用的GUI工具是tkinter。預設開啟桌面的資料夾,可以實現自動讀取文字檔案中的檔案超連結,實現自動下載到桌面。 最近在整理自己磁碟檔案時,發現很多下載的檔案,如果只保留一個下載的超連結,這樣

python(GUI)程式設計tkinter實現跨平臺的記事本

實現一個簡單的編輯記事本,實現記事本的最基本功能,麻雀雖小五臟俱全 tkinter實現跨平臺的記事本效果圖: 原始碼: # -*- encoding:utf -*- from tkinter import * from tkinter.messagebox import * fr

Python GUI程式設計實戰--Tkinter元件詳解:Scale

Scale元件 “Scale”小元件提供了一個圖形滑塊物件,允許您從特定比例中選擇值。 語法 Here is the simple syntax to create this widget − w = Scale ( master, option, … ) Parameters ma

Python GUI程式設計實戰--Tkinter元件詳解:Entry

Radiobutton控制元件 Radiobutton(單選按鈕):元件用於實現多選一的問題。Radiobutton 元件可以包含文字或影象,每一個按鈕都可以與一個 Python 的函式或方法與之相關聯,當按鈕被按下時,對應的函式或方法將被自動執行。 Radiobutton 元件僅能顯示單

Python GUI程式設計實戰--Tkinter元件詳解:ListBox

Listbox控制元件 列表框控制元件;在Listbox視窗小部件是用來顯示一個字串列表給使用者 Listbox 元件通常被用於顯示一組文字選項,Listbox 元件跟 Checkbutton 和Radiobutton 元件類似,不過 Listbox 是以列表的形式來提供選項的(後兩個是通

Python GUI程式設計實戰--Tkinter元件詳解:Button

Button控制元件 Tkinter 按鈕元件用於在 Python 應用程式中新增按鈕,按鈕上可以放上文字或影象,按鈕可用於監聽使用者行為,能夠與一個 Python 函式關聯,當按鈕被按下時,自動呼叫該函式。 語法 bt = Button ( master, option=value, …

Python GUI程式設計實戰--Tkinter元件詳解:Label

Label 控制元件 在 Tkinter 中, Label 控制元件用以顯示文字和圖片. Label 通常被用來展示資訊, 而非與使用者互動. (注: Label 也可以繫結點選等事件, 只是通常不這麼用). import tkinter as tk # 建立視窗物件 root = t

Python GUI程式設計實戰--Tkinter初識

什麼是Tkinter? Tkinter模組(“Tk 介面”)是Python的標準Tk GUI工具包的介面.Tk和Tkinter可以在大多數的Unix平臺下使用,同樣可以應用在Windows和Macintosh系統裡.Tk8.0的後續版本可以實現本地視窗風格,並良好地執行在絕大多數平臺中. T

python程式設計使用動態屬性實現定製類--特殊方法__setattr__,__getattribute__篇

問題:實現一個類,要求行為如同namedtuple:只存在給定名稱的屬性,不允許動態新增例項屬性。 主要知識點在於: __setattr__,__getattr__,getattribute__,__delattr__特殊方法的實現使用。 程式碼如下: 1 """ 2 執行環境 3 pyth

Python GUI程式設計訊息傳遞機制&使用者登入

PythonGUI程式設計之-訊息傳遞機制及簡單的使用者登入 訊息機制 1.訊息的傳遞機制 自動發出事件/訊息 訊息由系統負責傳送到佇列 有相關元件進行繫結/設定 後端自動選擇感興趣的事件並作出相應的

python GUI編程tkinter示例目錄樹遍歷工具

容器 string類型 現象 指定 red () 使用 import 信息 摘錄 python核心編程 本節我們將展示一個中級的tkinter應用實例,這個應用是一個目錄樹遍歷工具:它會從當前目錄開始,提供一個文件列表,雙擊列表中任意的其他目錄,就會使得工具切換到新目錄中,

Python GUI程式設計 Tkinter (一)

Tkinter 是Python內建的一個 頁面程式設計的一個庫。 一、匯入tkinter from tkinter import * 二、頁面程式設計首先需要建立一個視窗 # 將tkinter 物件例項化 root = Tk() # 設定視窗標題 root.title('視窗標題

Python GUI程式設計實戰--認識Tkinter元件

Tkinter 元件 Tkinter的提供各種控制元件,如按鈕,標籤和文字框,一個GUI應用程式中使用。這些控制元件通常被稱為控制元件或者部件。 目前有15種Tkinter的部件。 如下圖: 標準屬性 標準屬性也就是所有控制元件的共同屬性,如大小,字型和顏色等等。 幾何管理 Tkin

Python GUI程式設計實現方式優缺點對比

從 Python 語言的誕生之日起,就有許多優秀的 GUI 工具集整合到 Python 當中,這些優秀的 GUI 工具集,使得 Python 也可以在圖形介面程式設計領域當中大展身手,由於 

python程式設計實現定製類--使用描述符,__slots__,__new__篇

問題:實現一個類,要求行為如同namedtuple:只存在給定名稱的屬性,不允許動態新增例項屬性。 主要知識點在於: __slots__、描述符及property、__new__的使用 程式碼如下: 1 """ 2 執行環境 3 python 3.7+ 4 """ 5 from coll

Python學習【第20篇】:互斥鎖以及程序之間的三種通訊方式(IPC)以及生產者個消費者模型 python併發程式設計多程序1-----------互斥鎖程序間的通訊

python併發程式設計之多程序1-----------互斥鎖與程序間的通訊 一、互斥鎖 程序之間資料隔離,但是共享一套檔案系統,因而可以通過檔案來實現程序直接的通訊,

Python學習【第24篇】:死鎖,遞迴鎖,訊號量,Event事件,執行緒Queue python併發程式設計多執行緒2------------死鎖遞迴鎖,訊號量等

python併發程式設計之多執行緒2------------死鎖與遞迴鎖,訊號量等 一、死鎖現象與遞迴鎖 程序也是有死鎖的 所謂死鎖: 是指兩個或兩個以上

關於python GUI程式設計(Tkinter) 建立子視窗及在視窗上用圖片繪圖

  注意主視窗一定要為tk.Tk(),在主視窗上通過button的點選相應子函式建立子視窗,注意此時創建出來的視窗必須是Toplevel,否則出錯。至於用圖片在視窗上繪圖,則按程式碼所示即可。 # -*- coding: utf-8 -*- """ Created on

Python網路程式設計socketserver模組實現併發

為什麼要講socketserver?我們之前寫的tcp協議的socket是不是一次只能和一個客戶端通訊,如果用socketserver可以實現和多個客戶端通訊。它是在socket的基礎上進行了一層封裝,也就是說底層還是呼叫的socket,在py2.7裡面叫做SocketServer也就是大寫了兩個S,在py3