0% found this document useful (0 votes)
2 views

Computer Science Investigatory Project

The document outlines an Employee Management System project developed by Param Gupta for Class XI at D.A.V Public School, New Panvel. It includes acknowledgments, a project introduction detailing its purpose to streamline employee management, and the technical requirements for hardware and software. Additionally, the document provides a comprehensive overview of the project's modules, program code, and user interface elements using Tkinter.

Uploaded by

appdeveloper1970
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Computer Science Investigatory Project

The document outlines an Employee Management System project developed by Param Gupta for Class XI at D.A.V Public School, New Panvel. It includes acknowledgments, a project introduction detailing its purpose to streamline employee management, and the technical requirements for hardware and software. Additionally, the document provides a comprehensive overview of the project's modules, program code, and user interface elements using Tkinter.

Uploaded by

appdeveloper1970
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 12

D.A.

V PUBLIC SCHOOL, NEW PANVEL

COMPUTER SCIENCE INVESTIGATORY PROJECT

2024-25

Project: - Employee Management System

Name: - Param Gupta

Class: -XI

Div: -C

Roll no: -22


ACKNOWLEDGEMENT

I would like to acknowledge the support and help that was provided by my
teachers and friends for helping me to complete the given project within the
stipulated time.

I would like to thank our respected Principal, Mr. Sumanth Ghosh Sir for his
mutual support. I would also like to express my gratitude to my computer
science teacher Mrs. Neelu Raina madam for giving me the golden
opportunity to work on the wonderful computer science project. Finally I
would like to thank CBSE for giving me this opportunity to undertake this
project.

Thank you all for your continuous blessings, suggestions, guidance and
encouragement throughout this project.
CERTIFICATE

Examination Roll No: - ___________________________

This is certify that

Mst. Param Gupta of Class XI, Div C, studying in DAV Public School, New
Panvel has completed his English Core ALS Project Portfolio under my
guidance and supervision during the academic session 2024 – 25. The
project is submitted as per the guidelines of CBSE Board.

Date: - _______________________ Subject teacher Signature: -


_____________________

School Stamp
INTRODUCTION

The Purpose of the project is to present the requirement of a computerization of an employee


management system. This project thus adds a new employee, updates an existing employee
views an employee, searches employees using employee id & deletes the user if the user is
retired or has left the industry. “Employee Management System” is developed for the purpose of
making the management’s work easy and efficient. A new software has been proposed to reduce
manual work, improve efficiency, save time, and offer greater flexibility with a user-friendly
system.
REQUIREMENT

1. Hardware
a. Printer
b. Compact Disk
c. Processor
d. Ram: 64 MB
e. Hard Disk: 64GB

2. Software Requirement
a. Operating System: Windows
b. IDLE
c. Microsoft Word
MODULES
Modules required in this Projects is: -

1. tkinter Module:

 import tkinter as tk: This imports the Tkinter module, which is used for
creating the GUI window, frames, labels, buttons, text entries, and
more.
 from tkinter import ttk: This imports the ttk module from Tkinter, which
provides themed widgets like Combobox, Treeview, and more, giving a
more modern look to the GUI.

2. Widgets and Components Used:

 tk. Tk(): Initializes the main application window.


 tk. Label: Creates text labels.
 tk. Entry: Creates single-line text input fields.
 tk. Text: Creates multi-line text input fields.
 tk. Button: Creates clickable buttons.
 tk. Frame: Creates container frames for organizing widgets.
 ttk. Combobox: Creates dropdown selection menus.
 ttk. Treeview: Displays tabular data with rows and columns.
 tk. Scrollbar: Adds scrollbars to widgets, here used with the Treeview.

3. Geometry Management:

 pack (): Packs widgets into the window with options for side and fill.
 grid (): Places widgets in a grid layout, allowing precise control of rows
and columns.
 place (): Allows positioning of widgets at specific coordinates.

4. Styling and Layout:

 bg and fg parameters: Set background and foreground (text) colors.


 relief and bd: Set border style and border width.

5. Other Components:

 xscrollcommand and yscrollcommand: Link scrollbars to widgets (e.g.,


Treeview).
 heading and column methods: Configure the columns of the Treeview
widget.
PROGRAME CODE

import tkinter as tk
from tkinter import ttk

class employee ():


def __init__(self, root):
self. root = root
self. root. title ("Employee Management System")
self.root. Geometry("1400x650+0+0")
root. Resizable (0, 0)
self. mainLable = tk.Label(self.root, bd=5, relief="ridge",
text="Employee Managment System",
font=("Arial",40,"bold"),bg="red",fg="white")
self.mainLable.pack(side=tk.TOP, fill="x")

#------------Frame1------------
self.frame1=tk.Frame(self.root,bg="blue", bd=5, relief="groove")
self.frame1.place(x=10,y=80, width=400, height=560)

self.idLabel=tk.Label(self.frame1, text="Employee ID:", bg="blue",


fg="white", font=("Arial", 14,"bold"))
self.idLabel.grid(row=0, column=0, padx=5,pady=10)
self.idIn=tk.Entry(self.frame1, font=("Arial", 14), width=20)
self.idIn.grid(row=0, column=1, padx=5,pady=10)

self.nameLabel=tk.Label(self.frame1, text="Employee Name:",


bg="blue", fg="white", font=("Arial", 14,"bold"))
self.nameLabel.grid(row=1, column=0, padx=5,pady=10)
self.nameIn=tk.Entry(self.frame1, font=("Arial", 14), width=20)
self.nameIn.grid(row=1, column=1, padx=5,pady=10)

self.desigLabel=tk.Label(self.frame1, text="Designation:", bg="blue",


fg="white", font=("Arial", 14,"bold"))
self.desigLabel.grid(row=2, column=0, padx=5,pady=10)
self.desigIn=tk.Entry(self.frame1, font=("Arial", 14), width=20)
self.desigIn.grid(row=2, column=1, padx=5,pady=10)
self.salLabel=tk.Label(self.frame1, text="Salary:", bg="blue",
fg="white", font=("Arial", 14,"bold"))
self.salLabel.grid(row=3, column=0, padx=5,pady=10)
self.salIn=tk.Entry(self.frame1, font=("Arial", 14), width=20)
self.salIn.grid(row=3, column=1, padx=5,pady=10)

self.genLabel=tk.Label(self.frame1, text="Gender:", bg="blue",


fg="white", font=("Arial", 14,"bold"))
self.genLabel.grid(row=4, column=0, padx=5,pady=10)
self.genIn=ttk.Combobox(self.frame1, width=13, font=("Arial",
14),state="readonly")
self.genIn['values']=("Male","Female","Others")
self.genIn.grid(row=4, column=1, padx=5,pady=10)

self.addrLabel=tk.Label(self.frame1, text="Address:", bg="blue",


fg="white", font=("Arial", 14,"bold"))
self.addrLabel.grid(row=5, column=0, padx=5,pady=10)
self.txtIn=tk.Text(self.frame1, width=25, height=3, font=("Arial",14))
self.txtIn.grid(row=5, column=1, padx=5,pady=10)

#------------Internal Button Frame------------


self.btnFrame=tk.Frame(self.frame1,bg="blue",bd=5,relief="ridge")
self.btnFrame.place(x=10,y=350, width=380, height=150)

self.addbtn=tk.Button(self.btnFrame, width=10,text="Add",
font=("Arial",15,"bold"))
self.addbtn.grid(row=0, column=0, padx=30, pady=20)

self.updatebtn=tk.Button(self.btnFrame, width=10,text="Update",
font=("Arial",15,"bold"))
self.updatebtn.grid(row=0, column=1, padx=30, pady=20)

self.delbtn=tk.Button(self.btnFrame, width=10,text="Delete",
font=("Arial",15,"bold"))
self.delbtn.grid(row=1, column=0, padx=30, pady=20)

self.clearbtn=tk.Button(self.btnFrame, width=10,text="Clear",
font=("Arial",15,"bold"))
self.clearbtn.grid(row=1, column=1, padx=30, pady=20)

#------------Frame2------------
self. frame2=tk.Frame(self. root, bg="blue", bd=5, relief="groove")
self. frame2.place(x=420, y=80, width=965, height=560)

self. srchLabel=tk.Label(self. frame2, bg="blue", text="Search By:",


fg="White", font=("Arial", 14,"bold"))
self. srchLabel.grid(row=0, column=0, padx=10, pady=10)
self. srchIn=ttk.Combobox(self. frame2, width=13, font=("Arial",
14),state="readonly")
self. srchIn['values’] =("ID","Name")
self. srchIn.grid(row=0, column=1, padx=5, pady=10)

self. search=tk.Entry(self.frame2, font=("Arial", 14), width=50)


self. search.grid(row=0, column=2, padx=5,pady=10)

self. srchbtn=tk.Button(self.frame2, width=10,text="Search",


font=("Arial",15,"bold"))
self. srchbtn.grid(row=0, column=3, padx=10, pady=10)

self. showbtn=tk.Button(self.frame2, width=10,text="Show All",


font=("Arial",15,"bold"))
self. showbtn.grid(row=0, column=4, padx=10, pady=10)

#------------table frame------------

self. tabFrame=tk.Frame(self.frame2,bg="cyan", bd=5, relief="sunken")


self. tabFrame.place(x=10,y=50, width=940, height=450)

self.x_scrl=tk. Scrollbar(self.tabFrame, orient="horizontal")


self.x_scrl. pack(side=tk.BOTTOM, fill="x")

self. y_scrl=tk.Scrollbar(self.tabFrame, orient="vertical")


self. y_scrl.pack(side=tk.RIGHT, fill="y")
self. table=ttk. Treeview(self.tabFrame,
columns=("id","name","desig","sal","gen","addr"),
xscrollcommand=self.x_scrl, yscrollcommand=self.y_scrl)

self.x_scrl.config (command=self. table. xview)


self. y_scrl.config(command=self. table.yview)

self. table. heading("id",text="ID")


self. table. heading("name",text="Name")
self. table. heading("desig",text="Designation")
self. table. heading("sal”, text="Salary")
self. table. heading("gen”, text="Gender")
self. table. heading("addr”, text="Address")
self. table['show’] ="headings"

self. table. column("id”, width=100)


self. table. column("name",width=100)
self. table. column("desig",width=100)
self. table. column("sal",width=100)
self. table. column("gen",width=100)
self. table. column("addr",width=100)

self. table.pack(fill="both", expand=1)

root = tk. Tk()


obj = employee(root)
root. mainloop()
Output
1. Window

2. Input Fields

You might also like