Twórz Notatnik za pomocą Tkinter

| | | | | | | | | | | | |

Python 3 i Tkinter muszą być już zainstalowane w Twoim systemie, aby utworzyć ten notebook. Możesz pobrać odpowiedni pakiet Pythona zgodnie z wymaganiami systemowymi. Po pomyślnym zainstalowaniu Pythona musisz zainstalować Tkinter (pakiet GUI dla Pythona).

Użyj tego polecenia, aby zainstalować Tkinter:

pip install python-tk 

Importy Tkinter:


< tbody>

import tkinter

import os

z tkinter import *


# Aby uzyskać miejsce powyżej na post

z tkinter.messagebox import *


# Aby otworzyć używane okno dialogowe w razie potrzeby

from tkinter.filedialog import *

Uwaga. Okno wiadomości służy do pisania wiadomości w białym polu o nazwie Notatnik, a Plik dialogowy służy do wyświetlania / em> okna dialogowego podczas otwórz plik z dowolnego miejsca w systemie lub zapisz plik w określonej pozycji lub lokalizacji.

Dodaj menu:

# Dodaj kontrolki (widget)


self .__ thisTextArea.grid (sticky = N + E + S + W)


# Otwórz nowy plik

self .__ thisFileMenu.add_command (etykieta = "Nowy" ,

polecenie = self .__ newFile)


# Aby otworzyć istniejący plik

self .__ thisFileMenu.add_command (etykieta = " Open " ,

polecenie = self .__ openFile)


# Zapisz bieżący plik

self .__ thisFileMenu.add_command (etykieta = "Zapisz" ,

polecenie = self .__ saveFile)


# Utwórz linię w oknie dialogowym

self .__ thisFileMenu.add_separator ()


# Aby zatrzymać

self .__ thisFileMenu.add_command (etykieta = "Exit" ,

polecenie = self .__ quitApplication)

self .__ thisMenuBar.add_cascade ( label = " Plik" ,

menu = self .__ thisFileMenu)


# Aby dodać kreskę

self .__ thisEditMenu.add_command (etykieta = "Cut" ,

polecenie = self .__ cut)


# Aby nadać funkcję kopiowania

self .__ thisEditMenu.add_command (etykieta = "Kopiuj" ,

polecenie = self .__ copy )


# Aby dodać funkcję wstawiania

self .__ thisEditMenu.add_command (etykieta = "Wklej" ,

polecenie = self .__ paste)


# Aby włączyć edycję

self .__ thisMenuBar.add_cascade (etykieta = " Edytuj " ,

menu = self .__ thisEditMenu)


# Aby utworzyć funkcję opisu notatnika

self .__ thisHelpMenu.add_command (etykieta = " Informacje o Notatniku " ,

polecenie = self .__ showAbout )

self .__ thisMenuBar.add_cascade (etykieta = "Pomoc" ,

menu = self .__ thisHelpMenu)

< br>

self .__ root.config (menu = self .__ thisMenuBar)


self .__ thisScrollBar.pack (strona = PRAWO, wypełnij = Y)


# Pasek przewijania zostanie dostosowany automatycznie
# zgodnie z treścią

self .__ thisScrollBar.config (polecenie = self .__ thisTextArea .yview)

self .__ thisTextArea.config (yscrollcommand = sel f .__ thisScrollBar. set )

Za pomocą tego kodu dodamy menu do naszych okien notatnika i dodamy takie rzeczy, jak kopiowanie, wklejanie, zapisywanie itp.

Dodaj funkcjonalność:

def __ quitApplication ( self ):

self .__ root.destroy ()

# exit ()


def __ showAbout ( self ):

showinfo ( "Notatnik" , "Mrinal Verma" )

< br>

def __ openFile ( self ):


self plik .__ = askopenfilename (defaultextension = ". txt" ,

typy plików = [( "Wszystkie pliki " , " *. * " ),

( "Dokumenty tekstowe" , "*. txt" )])

if self plik .__ = = "":


# brak pliku do otwarcia

self .__ file = Brak

else :

# spróbuj otworzyć plik

# ustaw tytuł okna

self .__ root.title (os.path. basename ( self plik .__) + " - Bez tepadu " )

self .__ thisTextArea.delete ( 1.0 , END)


file = open ( self plik .__, "r" )


self .__ thisTextArea.insert ( 1.0 , plik . read ())


plik . close ()

def __ newFile ( self ):

self .__ root.title ( " Bez tytułu - Notatnik " )

self plik .__ = Brak

self .__ thisTextArea.delete ( 1.0 , END)


def __ saveFile ( self ):


if self plik .__ = = Brak :

# zapisz jako nowy plik

> self plik .__ = asksaveasfilename (initialfile = ’ Untitled.txt’ ,

defaultextension = ". txt" ,

typy plików = [( "Wszystkie pliki" , "*. *" ),

( "Dokumenty tekstowe" , "*. txt" )])


if self plik .__ = = "":

self plik .__ = Brak

else :

# spróbuj zapisać plik

file = open ( self plik .__, "w" )

f ile . write ( self .__ thisTextArea.get ( 1.0 , END))

plik . close ()

# zmień tytuł okna

self .__ root.title (os.path.basename ( self plik .__) + "- Notatnik" )



else :

file = open ( self .__file, "w" )

plik . write ( self .__ thisTextArea.get ( 1,0 , END))

plik . close ()


def __ cut ( self ):

self .__ thisTextArea.event_generate ( """Cut""" )


def __ kopia ( self ):

self .__ thisTextArea.event_generate ( """Copy""" )


def __ paste ( self ):

self .__ thisTextArea.event_generate ( """Wklej""" )

To dodaliśmy wszystkie funkcje wymagane w notatniku, możesz także dodać inne funkcje, takie jak rozmiar czcionki, kolor czcionki, pogrubienie, podkreślenie itp.

Główny kod po łączenie wszystkich:


import tkinter

importuj os

z tkinter import *

z tkinter.messagebox import *

z tkinter.filedialog importuj *


class Notatnik:

__ root = Tk ()


# domyślna szerokość i wysokość okna

__ thisWidth = 300

__ thisHeight = 300

__ thisTextArea = Tekst (__root)

__ thisMenuBar = Menu (__ root)

__ thisFileMenu = Menu (__ thisMenuBar, tearoff = 0 )

__ thisEditMenu = Menu (__ thisMenuBar, tearoff = 0 )

__ thisHelpMenu = Menu (__ thisMenuBar, oderwanie = 0 )


# Dodaj pasek przewijania

__ thisScrollBar = Pasek przewijania (__ thisTextArea)

__ plik = Brak


def __ init __ ( self , * * kwargs ):


# Ustaw ikonę

spróbuj :

self .__ root .wm_iconbitmap ( "Notepad.ico" )

z wyjątkiem :

pass


# Ustaw rozmiar okna (domyślnie 300x300)


spróbuj :

self .__ thisWidth = kwargs [ ’ width’ ]

z wyjątkiem KeyError:

pass

< br>

spróbuj :

self .__ thisHeight = kwargs [ ’height’ ]

z wyjątkiem KeyError:

pass


# Ustaw tekst okna

self .__ root.title ( "Bez tytułu - Notatnik" )


# Wyśrodkuj okno

screenWidth = self .__ root. winfo_screenwidth ()

screenHeight = self .__ root .winfo_screenheight ()


# Po lewej

left = (screenWidth / 2 ) - ( self .__ thisWidth / 2 )


# Prawie

góra = (screenHeight / 2 ) - ( self . __thisHeight / 2 )

# Dla góry i dołu

self .__ root.geometry ( ’% dx% d +% d +% d’ % ( self .__ thisWidth,

self .__ thisHeight,

lewo, góra))

# Aby automatycznie zmienić rozmiar obszaru tekstu

/ code> pass


# Ustaw tekst okna

self .__ root.title ( "Bez tytułu - Notatnik" )


# Wyśrodkuj okno

screenWidth = self .__ root.winfo_screenwidth ()

screenHeight = self .__ root.winfo_screenheight ()


# Po lewej

left = (screenWidth / 2 ) Twórz Notatnik za pomocą Tkinter __del__: Questions

Twórz Notatnik za pomocą Tkinter __delete__: Questions

Shop

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Best laptop for Zoom

$499

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method