MAHARASHTRA STATE BOARD OF TECHINIC EDUCATION, MUMBAI
A Project Report
On
“Notepad”
DIPLOMA
In
COMPUTER ENGINEERING
Submitted by
MR. OMKAR LAXMAN KHANDEKAR
MR.PRATIK SHANTINATH KAPASE
MR. TEJAS PANDURANG SAVARDEKAR
MR. SANKET BALKRISHNA KARADE
DEPARTMENT OF COMPUTER ENGINEERING
UNDER THE GUIDANCE OF
MRS. S.M.SHIVARE
SANT GAJANAN MAHARAJ RURAL POLYTECHNIC, MAHAGAON
ACADEMIC YEAR 2024-2025
SANT GAJANAN MAHARAJ RURAL HOSPITAL & RESEARCH CENTER, MAHAGAON
“SANT GAJANAN MAHARAJ RURAL POLYTECHNIC”
AP-MAHAGAON, SITE-CHINCHEWADI, TAL- GADHINGLAL, KOLHAPUR
Certificate
This is to certify that the following students of VI semester of Diploma in COMPUTER
ENGINEERING of Institute SANT GAJANAN MAHARAJ RURAL
POLYTECHNIC MAHAGAON-416503 (CODE-0965) has completed Micro-
project on “Notepad” satisfactory in subject Programming with python subject
code 22616 for academic year 2024 to 2025 as prescribed in the curriculum.
ROLL ENROLLMENT NO. SEAT STUDENT NAME
NO. NO.
52 2209650067 Mr.Omkar Laxman Khandekar
45 2209650058 Mr.Pratik Shantinath Kapase
39 2209650052 Mr. Tejas Pandurang Savardekar
49 2209650064 Mr. Sanket Balkrishna Karade
DATE: PLACE: MAHAGAON
Mrs.S.M.Shivare Mr. G. K. Birangaddi Mrs. R. S. Patil
(Project Guide) (Head of Department) (Principal)
INDEX
Sr.No Content Page No
1 Introduction 1
2 Part – A: Micro-Project Proposal 2-3
3 Part – B: Micro-Project Report 4-5
4 Program 6-9
5 Output 10-12
6 Conclusion, Reference 13
Introduction
Python is a powerful programming language that can be used to create a wide range of
applications, including desktop applications. Skinter, a built-in Python module, provides a simple
way to create graphical user interfaces (GUIs) for these applications.
In this tutorial, we will be using wrap in Python to build a text editor using Skinter with basic
functionalities such as opening, saving, and editing files.
This abstract notepad project in Python is an excellent way to learn how to work with GUIs in
Python and create a useful application that you can use for your own text editing needs.
1
Part – A: Micro-Project Proposal
Title: Notepad
1.0 Aim/Benefits of the Micro-project :-
The primary aim of a library management system is to efficiently manage library resources including
books, periodicals, digital media, and other materials. It aims to streamline processes such as book
acquisition, cataloging, circulation, and inventory management.
2.0 Course Outcome :-
a) Display message on screen using Python script on IDE.
b) Develop python program to demonstrate use of operators.
c) Perform operation on data structure in Python.
d) Develop function for given problem.
e) Desing classes for given problem.
f) Handle exception.
3.0 Proposed Methodology :-
User Interface Design:
Design a simple text-based user interface (UI) using the console for interaction with the user.
This UI should display options for creating a new file, opening an existing file, editing the file
content, saving changes, and exiting the program.).
Documentation and Comments:
Provide clear documentation for the code, including comments that explain the purpose and
functionality of each function and section of code.
Document any assumptions made and limitations of the notepad application.
Text Editing Functionality:
Implement functions to allow users to edit the content of the file. Provide options for inserting text, deleting text,
modifying existing text, and navigating through the file content.
2
4.0 Literature Review:-
A literature review for a notepad micro project in Python would typically involve examining
existing resources, libraries, and frameworks related to text editing, file handling, and user
interfaces in Python.
While there might not be specific academic literature on such a micro project, you can still review
relevant materials, including documentation, tutorials, and articles, to gather insights and best
practices. Here's a structured approach you can follow for your literature review.
By conducting a comprehensive literature review, you can leverage existing knowledge and
resources to inform the development of your notepad micro project in Python. Remember to
critically evaluate each source and adapt the findings to suit your project's requirements and
constraints.
5.0 Software requirements :-
1. IDLE (Python 3.11 64-bit)
2. Operating System
3. Window 11
ROLL ENROLLMENT NO. STUDENT NAME
NO.
52 2209650067 Mr. Omkar Laxman Khandekar
10 2209650058 Mr. Pratik Shantinath Kapase
39 2209650052 Mr. Tejas Pandurang Savardekar
49 2209650064 Mr. Sanket Balkrishna Karade
3
Part – B: Micro-Project Report
Title: Notepad
1.0 Rational :-
Building a notepad application provides an excellent learning opportunity for individuals who are
new to programming or Python specifically. It covers essential concepts such as file handling, user
input/output, data manipulation, and basic GUI development.
Notepad applications are ubiquitous and widely used for simple text editing tasks. By creating a
notepad in Python, learners can directly apply their programming
2.0 Aim/Benefits of the Micro-projects:-
The primary aim of a library management system is to efficiently manage library resources
including books, periodicals, digital media, and other materials. It aims to streamline processes
such as book acquisition, cataloging, circulation, and inventory management.
3.0 Course Outcome :-
a) Display message on screen using Python script on IDE.
b) Develop python program to demonstrate use of operators.
c) Perform operation on data structure in Python.
d) Develop function for given problem.
e) Desing classes for given problem.
f) Handle exception.
4.0 Actual Resources Used:
Sr.
No Name of Resource/Material Specification Qyt Remarks
1. IDLE (Python) - 1 Used
2. PDF Reader 15MB 1 Used
3. Laptop HP Company 1 Used
4
5.0 Literature Review:-
A literature review for a notepad micro project in Python would typically involve examining
existing resources, libraries, and frameworks related to text editing, file handling, and user
interfaces in Python.
While there might not be specific academic literature on such a micro project, you can still
review relevant materials, including documentation, tutorials, and articles, to gather insights
and best practices. Here's a structured approach you can follow for your literature review.
By conducting a comprehensive literature review, you can leverage existing knowledge and
resources to inform the development of your notepad micro project in Python. Remember to
critically evaluate each source and adapt the findings to suit your project's requirements and
constraints.
6.0 Acknowledgement:-
We would like to express our sincere gratitude to everyone who contributed to the completion of this
notepad micro project in Python.
First and foremost, we extend our appreciation to the Python programming community for providing
valuable resources, documentation, and support throughout the development process. Special thanks to
the developers of Python and its libraries for creating such a versatile and powerful programming
language.
We are also grateful to the authors of relevant tutorials, articles, and online forums that helped us
understand and implement various concepts and features, including file handling, user input/output,
and basic GUI development in Python.
7.0 Features:-
Create new text files
Open existing text files
Edit file content
Save changes to files
Close the text editor
5
Program:-
import tkinter as tk
from tkinter import filedialog
class Notepad(tk.Tk):
def init (self, *args, **kwargs):
tk.Tk. init (self, *args, **kwargs)
# Set the title for the notepad
self.title("Notepad")
# Create a text widget
self.text = tk.Text(self, wrap="word")
self.text.pack(side="top", fill="both", expand=True)
# Create a menu bar
self.menu = tk.Menu(self)
self.config(menu=self.menu)
# Create a file menu
file_menu = tk.Menu(self.menu)
self.menu.add_cascade(label="File", menu=file_menu)
file_menu.add_command(label="New", command=self.new_file)
file_menu.add_command(label="Open", command=self.open_file)
file_menu.add_command(label="Save", command=self.save_file)
file_menu.add_separator()
file_menu.add_command(label="Exit", command=self.quit)
# Create an edit menu
edit_menu = tk.Menu(self.menu)
self.menu.add_cascade(label="Edit", menu=edit_menu)
edit_menu.add_command(label="Cut", command=self.cut)
edit_menu.add_command(label="Copy", command=self.copy)
edit_menu.add_command(label="Paste", command=self.paste)
def new_file(self):
self.text.delete("1.0", "end")
self.title("Notepad")
def open_file(self):
file = filedialog.askopenfile(parent=self, mode="rb", title="Open a file")
if file:
contents = file.read()
self.text.delete("1.0", "end")
self.text.insert("1.0", contents)
file.close()
self.title(file.name + " - Notepad")
def save_file(self):
file = filedialog.asksaveasfile(mode="w", defaultextension=".txt", filetypes=[("Text Documents",
"*.txt"), ("All Files", "*.*")])
if file:
contents = self.text.get("1.0", "end")
file.write(contents)
file.close()
self.title(file.name + " - Notepad")
def cut(self):
self.text.event_generate("<<Cut>>")
def copy(self):
self.text.event_generate("<<Copy>>")
def paste(self):
self.text.event_generate("<<Paste>>")
def exit(self):
self.quit
if name == " main ":
notepad = Notepad()
notepad.mainloop()
Output:-
Conclusion:-
In conclusion, we are proud of the accomplishments achieved through this notepad micro project and
remain enthusiastic about exploring new avenues for growth and innovation in Python programming.
Through this project, we have successfully implemented a functional text editor that allows users to
create, open, edit, and save text files. We have explored essential concepts such as file handling, user
input/output, and basic GUI development, gaining hands-on experience in these fundamental areas of
programming.
Reference :-
https://www.w3schools.com/python/
https://www.officeclip.com/
https://www.javatpoint.com/
13