이 노트북을 만들려면 시스템에 Python 3 및 Tkinter가 이미 설치되어 있어야 합니다. 시스템 요구 사항에 따라 적절한 Python 패키지 를 다운로드할 수 있습니다. Python을 성공적으로 설치한 후에는 Tkinter(Python용 GUI 패키지)를 설치해야 합니다.
Tkinter를 설치하려면 다음 명령을 사용하십시오.
pip install python-tk
Tkinter 가져오기:
<코드 클래스 ="키워드 "> 가져오기 <코드 클래스 ="일반 "> tkinter < 코드 클래스 = "keyword"> 가져오기
참고. 메시지 상자는 메모장이라는 흰색 상자에 메시지를 작성하는 데 사용되며 대화 파일은 시스템의 어디에서나 파일을 열거나 특정 위치 또는 위치에 파일을 저장합니다. 메뉴 추가:
<코드 클래스 = "일반"> 명령 <코드 클래스 = " 키워드"> = <코드 클래스 = "color1"> 자체 <코드 클래스 = "일반"> .__ newFile)
<코드 클래스 = "일반"> 명령 <코드 클래스 = "keyword"> =
<코드 클래스 = "정의되지 않은 공백"> <코드 클래스 = "일반"> 명령
<코드 클래스 = "일반"> 메뉴
< 코드 클래스 = "color1"> 자체 <코드 클래스 = "일반"> .__ thisTextArea.config (yscrollcommand <코드 클래스 = " 키워드 "> = <코드 클래스 ="color1 "> 선택 f |
이 코드를 사용하여 메모장 창에 메뉴를 추가하고 복사, 붙여넣기, 저장 등과 같은 항목을 추가합니다.
기능 추가:
def
__ quitApplication (
자체
):
자체
<코드 클래스 = "plain"> .__ root.destroy ()
# exit ()
def
__ showAbout (
자기
):
showinfo(
"메모장"
,
"Mrinal Verma"
)
__ openFile (
자기
):
자체
.__ 파일
=
Askopenfilename (defaultextension
=
". txt"
<코드 클래스 = "일반">,
<코드 클래스 = "일반"> 파일 유형 <코드 클래스 = "키워드"> = 코드> <코드 클래스 = "일반"> [( <코드 클래스 = "문자열"> "모든 파일" <코드 클래스 ="일반 ">, <코드 클래스 =" 문자열 ">" *. * " <코드 클래스 ="일반 ">),
<코드 클래스 = "일반"> ( <코드 클래스 = "문자열"> "텍스트 문서" <코드 클래스 = "일반">, <코드 클래스 = "문자열"> "*. txt" )])
if
자체
<코드 클래스 = "일반"> .__ 파일 <코드 클래스 = "키워드"> = <코드 클래스 = "키워드"> = "":
# 열 파일이 없습니다.
자체
.__ 파일
=
없음
else
:
# 파일 열기 시도
# 창 제목 설정
자체
.__ root.title(os.path. 기본 이름 (
자체
.__ 파일)
+ 코드> <코드 class = "string"> " - 메모장 없음 "
)
자기
.__ thisTextArea.delete (
1.0
, END)
파일
=
열기
(
자체
.__ 파일,
"r"
<코드 클래스 = "일반">)
<코드 클래스 = "color1"> 자체 < 코드 클래스 = "일반"> .__ thisTextArea.insert ( <코드 클래스 = "값"> 1.0 <코드 클래스 = "일반">, <코드 클래스 = "함수" > 파일 <코드 클래스 = "일반">. 읽기 ())
파일
. 닫기()
def
__ newFile (
자체
):
자기
.__ root.title (
" 제목 없음 - 메모장 "
)
자체
.__ 파일
< 코드 클래스 = "keyword"> = <코드 클래스 = "color1"> 없음
<코드 클래스 = "color1"> 자체 <코드 클래스 = " 일반"> .__ thisTextArea.delete ( 1.0
, END)
def
__ saveFile (
자체
):
if
자기
.__ 파일
=
=
없음
:
# 새 파일로 저장
자체
.__ 파일
=
Asksaveasfilename (초기 파일
=
’ Untitled.txt’
,
defaultextension
=
". txt"
<코드 클래스 = "일반">,
<코드 클래스 = "일반"> 파일 유형 <코드 클래스 = "키워드"> = <코드 클래스 = "일반"> [( <코드 클래스 = "문자열"> "모든 파일" <코드 클래스 = "일반">, <코드 클래스 = "문자열"> "*. *" <코드 클래스 = "일반">),
<코드 클래스 = "일반"> ( <코드 클래스 = "문자열"> "텍스트 문서" <코드 클래스 = "일반">, <코드 클래스 = "문자열"> "*. txt" )])
if
self
.__ 파일
=
=
<코드 클래스 = "일반"> "":
<코드 클래스 = "color1"> 자체 <코드 클래스 = "일반"> .__ 파일 =
없음
else
<코드 클래스 = "일반">:
<코드 class = "comments"> # 파일 저장 시도
파일
=
< 코드 클래스 = "functions" > 열기 (
자체
.__ 파일,
<코드 클래스 = "문자열"> "w" <코드 클래스 = "일반">)
<코드 클래스 = " 기능 "> f 파일 <코드 클래스 ="일반 ">. 쓰기 ( 자기
.__ thisTextArea.get (
1.0
, END))
파일
. 닫기 ()
# 창 제목 변경
자체
.__ root.title(os.path.basename (
self
.__ 파일)
< 코드 클래스 = "키워드"> + <코드 클래스 = "문자열"> "- 메모장" <코드 클래스 = "일반">)
else
:
파일
=
열기
( 코드> <코드 클래스 = "color1"> 자체
<코드 클래스 = "일반">.__파일, <코드 클래스 = "문자열"> "w" <코드 클래스 = " 일반">)
파일
. 쓰기 (
자기
.__ thisTextArea.get (
1.0
, END))
파일
. 닫기 ()
def
__ cut (
자체
):
자기
.__ thisTextArea.event_generate (
"""잘라내기"""
)
def
__ 복사(
자기
):
자기
.__ thisTextArea.event_generate (
"""복사"""
<코드 클래스 = "일반 ">)
def
__ paste (
자기
):
자기
.__ thisTextArea.event_generate(
<코드 클래스 = "문자열"> """붙여넣기""" <코드 클래스 = "일반">)
이것은 메모장에 필요한 모든 기능을 추가했으며 글꼴 크기, 글꼴 색상, 굵게, 밑줄 등과 같은 다른 기능을 추가할 수도 있습니다.
메인 코드 뒤에 모두 결합: b>
가져오기
tkinter
가져오기
os
에서 <코드 클래스 = "일반" > tkinter <코드 클래스 = "키워드"> 가져오기 <코드 클래스 = "키워드"> *
<코드 클래스 = "keyword"> tkinter.messagebox
가져오기
*
tkinter.filedialog
가져오기
*
<코드 클래스 = "키워드"> 클래스 메모장:
__ root
=
Tk ()
# 기본 창 너비와 높이
< 코드 클래스 ="정의되지 않은 공백 "> <코드 클래스 = "일반"> __ thisWidth <코드 클래스 = "키워드"> = <코드 클래스 = "값"> 300 코드>
<코드 클래스 ="일반 "> __ thisHeight <코드 클래스 ="keyword "> = <코드 클래스 ="값 "> 300
__ thisTextArea
=
텍스트(__root)
__ thisMenuBar
=
메뉴(__ 루트)
<코드 클래스 = "일반"> __ thisFileMenu <코드 클래스 = "키워드" > = 메뉴(__ thisMenuBar, 분리
=
0
)
__ thisEditMenu
<코드 클래스 = "keyword"> = 메뉴(__ thisMenuBar, 분리
=
0
)
__ thisHelpMenu
=
메뉴(__ thisMenuBar, 분리
=
0
<코드 클래스 = "일반">)
# 스크롤바 추가
__ thisScrollBar
=
스크롤바(__ thisTextArea)
__ 파일
=
없음
def
__ init __ (
자기 < /코드> <코드 클래스 = "일반">,
<코드 클래스 = "키워드"> * <코드 클래스 = "키워드"> * <코드 클래스 = "일반"> kwargs ):
# 아이콘 설정
시도
:
자기
.__ 루트 .wm_iconbitmap(
<코드 클래스 = "문자열"> "Notepad.ico" <코드 클래스 = "일반">)
제외
:
pass
# 창 크기 설정(기본값 300x300)
:
자체
<코드 클래스 = "일반"> .__ thisWidth <코드 클래스 = "키워드"> = <코드 클래스 = " 일반 "> kwargs [ ’ 너비’
]
제외
KeyError:
통과
시도
:
<코드 클래스 = "color1"> 자체 <코드 클래스 = "일반"> .__ thisHeight <코드 클래스 = "키워드"> = <코드 클래스 = "일반" > kwargs [ ’높이’
]
제외
KeyError:
pass
# 창 텍스트 설정
자기
.__ root.title (
"제목 없음 - 메모장"
)
# 창 중앙에 맞추기
screenWidth
=
자체
.__ 루트. winfo_screenwidth ()
screenHeight
=
자기
.__ root .winfo_screenheight ()
# 왼쪽
왼쪽
=
(화면 너비
<코드 클래스 = "키워드"> / <코드 클래스 = "값"> 2 <코드 클래스 = "일반">) <코드 클래스 = "키워드"> - <코드 클래스 = "일반"> ( <코드 클래스 = "color1" > 자체 <코드 클래스 = "일반"> .__ thisWidth <코드 클래스 = "키워드"> / <코드 클래스 = "값"> 2 <코드 클래스 = "plain">)
# 오른쪽으로
상단
=
(screenHeight
<코드 클래스 = "키워드"> / <코드 클래스 = "값"> 2 <코드 클래스 = "일반">) <코드 클래스 = "키워드"> - < 코드 클래스 = "일반"> ( <코드 클래스 = "color1"> 자체 <코드 클래스 = "일반">. __thisHeight <코드 클래스 = "키워드"> / <코드 클래스 = "값"> 2 <코드 클래스 = "일반">)
# 상단 및 하단용
자체
.__ root.geometry (
’% dx% d +% d +% d’
%
(
자기
.__ thisWidth,
< 코드 클래스 = "color1"> 자체 <코드 클래스 = "일반"> .__ thisHeight,
왼쪽, 상단))
# 텍스트 영역의 크기를 자동으로 조정하려면
/ code>
통과
# 창 텍스트 설정
self
.__ root.title (
"제목 없음 - 메모장"
)
# 중앙 창
screenWidth
=
자기
.__ root.winfo_screenwidth ()
screenHeight
<코드 클래스 = "키워드"> = <코드 클래스 = "color1"> 자체 <코드 클래스 = "일반" > .__ root.winfo_screenheight ()
# 왼쪽
왼쪽
=
(screenWidth
<코드 클래스 = "키워드"> / <코드 클래스 = "값"> 2 <코드 클래스 = "일반">) <코드 클래스