Apna Hindi Tech Website Computer science के Students और Technology के बारे में जानकारी रखने वाले लोगों के लिए बहुत लाभदायक Web site है।
हमारी Website Apna Hindi Tech पर Free में Python Programming language हिंदी में सिखाई जाती है और दुनिया में जो लेटेस्ट टेक्नोलॉजी(Technology) है उसके बारे में विस्तार से बताया जाता है।
दोस्तों हमने अपनी वेबसाइट Apna Hindi Tech पर Python Programming से रिलेटेड बहुत सारे Softwares बनाना भी सिखाया है वो भी अपनी भाषा हिंदी में।
Text Editor Software बनाना सीखे सरल भाषा मे |
Hello Dosto !
क्या आप MS -Word जैसे अन्य कोई Text -Editor सॉफ्टवेयर बनाना चाहते हैं अगर हां तो आज हम आपके लिए एक बहुमूल्य जानकारी लेकर आए हैं जिसकी मदद से आप एक खुद का Text -Editor सॉफ्टवेयर बना सकते है | तो दोस्तों चलिए शुरू करते हैं ।
Text -Editor सॉफ्टवेयर बनाने के लिए आपको एक High - Level Programming Language आनी चाहिए । अगर आप Programming Language सीखना चाहते हैं तो हम ने programming से related जानकारी अपनी web- Site Apna Hindi Tech पर update कर दिए है और Programming से related Notes हमने अपने टेलीग्राम Channel पर Update कर दिय है |
और अधिक जानकारी के लिए नीचे दी गई लिंक पर क्लिक करें।👇
Telegram: https://t.me/ApnaHindiTech
दोस्तों हम Text-Editor सॉफ्टवेयर पाइथन प्रोग्रामिंग की मदद से बनाएंगे।
Step-1: सबसे पहले हम Text-Editor बनाने के लिए Python की Library Tkinter का उपयोग करेंगे उस के उपयोग से ही हम संपूर्ण Text-Editor को बनाएंगे और डिजाइन करेंगे।
Step-2: अब हम पाइथन की Library Tkinter को import करेंगे । import करने के लिए आप नीचे दिए गए चित्र में देख सकते हैं ।
import tkinter as tk
from tkinter import ttk
Step-3: अब हम पाइथन की अन्य लाइब्रेरी को जैसे Font, Colorchooser , filedialog, os और message box import करेंगे।
import tkinter as tk
from tkinter import ttk
from tkinter import font,colorchooser,filedialog,messagebox
import os
step-4: अब हम Text-Editor का main menu और उसके आइकन को डिजाइन और सेट करेंगे।
main_application=tk.Tk()
main_application.geometry('1200x800')
main_application.title('SK TEXT EDITOR')
main_application.wm_iconbitmap('icon.ico')
################################################# main menu ####################################################################################################
main_menu=tk.Menu()
#file icons
new_icon=tk.PhotoImage(file='icons2/new.png')
open_icon=tk.PhotoImage(file='icons2/open.png')
save_icon=tk.PhotoImage(file='icons2/save.png')
save_as_icon=tk.PhotoImage(file='icons2/save_as.png')
exit_icon=tk.PhotoImage(file='icons2/exit.png')
file=tk.Menu(main_menu,tearoff=False)
# edit icons
copy_icon=tk.PhotoImage(file='icons2/copy.png')
paste_icon=tk.PhotoImage(file='icons2/paste.png')
cut_icon=tk.PhotoImage(file='icons2/cut.png')
clear_all_icon=tk.PhotoImage(file='icons2/clear_all.png')
find_icon=tk.PhotoImage(file='icons2/find.png')
edit=tk.Menu(main_menu,tearoff=False)
#view icons
tool_bar_icon=tk.PhotoImage(file='icons2/tool_bar.png')
status_bar_icon=tk.PhotoImage(file='icons2/status_bar.png')
view=tk.Menu(main_menu,tearoff=False)
## color theme icon
light_default_icon=tk.PhotoImage(file='icons2/light_default.png')
light_plus_icon=tk.PhotoImage(file='icons2/light_plus.png')
dark_icon=tk.PhotoImage(file='icons2/dark.png')
red_icon=tk.PhotoImage(file='icons2/red.png')
monokai_icon=tk.PhotoImage(file='icons2/monokai.png')
night_blue_icon=tk.PhotoImage(file='icons2/night_blue.png')
color_theme=tk.Menu(main_menu,tearoff=False)
theme_choice=tk.StringVar()
color_icons=(light_default_icon,light_plus_icon,dark_icon,red_icon,monokai_icon,night_blue_icon)
color_dict={
'Light Default':('#000000','#ffffff'),
'Light Plus':('#474747','#e0e0e0'),
'Dark':('#c4c4c4','#2d2d2d'),
'Red':('#2d2d2d','#ffe8e8'),
'Monokai':('#d3b774','#474747'),
'Night Blue':('#ededed','#6b9dc2')
}
#cascade
main_menu.add_cascade(label='File',menu=file)
main_menu.add_cascade(label='Edit',menu=edit)
main_menu.add_cascade(label='View',menu=view)
main_menu.add_cascade(label='Color Theme',menu=color_theme)
# #---------------------------&&&&&&&&&&&&&&&&&&&&& End main menu &&&&&&&&&------------
Step-5: अब हम Text-Editor का Tool-bar और Buttons और उसका Text Functionality के Code को लिखेंगे। जो की इस प्रकार है
text_editor=tk.Text(main_application)
text_editor.config(wrap='word',relief=tk.FLAT)
scrool_bar=tk.Scrollbar(main_application)
text_editor.focus_set()
scrool_bar.pack(side=tk.RIGHT,fill=tk.Y)
text_editor.pack(fill=tk.BOTH,expand=True)
scrool_bar.config(command=text_editor.yview)
text_editor.config(yscrollcommand=scrool_bar.set)
# font family and font size functionality
current_font_family='Arial'
current_font_size= 12
def change_font(event=None): # aap chye to yaha main_application bhi pass kra sakte hai
global current_font_family
current_font_family=font_family.get()
text_editor.configure(font=(current_font_family,current_font_size))
def change_fontsize(event=None): # yaha pr bhiaap chye to yaha main_application bhi pass kra sakte hai
global current_font_size
current_font_size=size_var.get()
text_editor.configure(font=(current_font_family,current_font_size))
font_box.bind("<<ComboboxSelected>>",change_font)
font_size.bind("<<ComboboxSelected>>",change_fontsize)
text_editor.configure(font=('Arial',12))
## buttons functionality
# bold button functionality
def change_bold():
text_property_bold=tk.font.Font(font=text_editor['font'])
if text_property_bold.actual()['weight']=='normal':
text_editor.configure(font=(current_font_family,current_font_size,'bold'))
if text_property_bold.actual()['weight']=='bold':
text_editor.configure(font=(current_font_family,current_font_size,'normal'))
bold_btn.configure(command=change_bold)
# italic button functionality
def change_italic():
text_property_italic=tk.font.Font(font=(text_editor['font']))
if text_property_italic.actual()['slant']=='roman':
text_editor.configure(font=(current_font_family,current_font_size,'italic'))
if text_property_italic.actual()['slant']=='italic':
text_editor.configure(font=(current_font_family,current_font_size,'roman'))
italic_btn.configure(command=change_italic)
# underline button functionality
def change_underline():
text_property_underline=tk.font.Font(font=(text_editor['font']))
if text_property_underline.actual()['underline']==0:
text_editor.configure(font=(current_font_family,current_font_size,'underline'))
if text_property_underline.actual()['underline']==1:
text_editor.configure(font=(current_font_family,current_font_size,'normal'))
underline_btn.configure(command=change_underline)
# font color functionality
def change_font_color():
color_var=tk.colorchooser.askcolor()
text_editor.configure(foreground=color_var[1])
font_color_btn.configure(command=change_font_color)
## align functionality
# align left button functionality
def align_left():
text_content=text_editor.get(1.0,'end')
text_editor.tag_config('left',justify=tk.LEFT)
text_editor.delete(1.0,tk.END)
text_editor.insert(tk.INSERT,text_content,'left')
align_left_btn.configure(command=align_left)
# align center button functionality
def align_center():
text_context=text_editor.get(1.0,'end')
text_editor.tag_config('center',justify=tk.CENTER)
text_editor.delete(1.0,tk.END)
text_editor.insert(tk.INSERT,text_context,'center')
align_center_btn.configure(command=align_center)
# align right button functionality
def align_right():
text_context=text_editor.get(1.0,'end')
text_editor.tag_config('right',justify=tk.RIGHT)
text_editor.delete(1.0,tk.END)
text_editor.insert(tk.INSERT,text_context,'right')
align_right_btn.configure(command=align_right)
# #-------------------------------------------&&&&& End text editor &&&&&&&&&&&&&&&&&&&&&&&&&&&------------------------------------------------------------------------------------
# ################################################# status bar ###############################################################################
status_bar=ttk.Label(main_application,text='Status Bar')
status_bar.pack(side=tk.BOTTOM)
text_changed=False
def changed(event=0):
global text_changed
if text_editor.edit_modified():
text_changed=True
words=len(text_editor.get(1.0,'end-1c').split())
characters=len(text_editor.get(1.0,'end-1c').replace(" ",''))
status_bar.config(text=f'Chracters : {characters} Words : {words}')
text_editor.edit_modified(False)
text_editor.bind('<<Modified>>',changed)
Step-6: अब हम Code को Run करेंगे और चेक करेंगे की हमारा कोड सही चल रहा है या नहीं।
दोस्तों आप देख सकते हैं हमारा Code एकदम सही चल रहा है।
Testing Video:
दोस्तों ऊपर लिखा हुआ Code Complete Code नहीं है अगर आप इस Text - Editor का Complete Code चाहते हैं तो आप हमारे Telegram चैनल Apna Hindi Tech पर जाएं वहां पर आपको इस Text - Editor का Complete Source Code मिल जाएगा उसके साथ आपको Icons और Exe file भी मिल जाएगी तो दोस्तों जरूर Join करें हमारा टेलीग्राम चैनल।
Telegram: https://t.me/ApnaHindiTech
यह भी पढ़ें
4 comments


Nice software
ReplyDeleteI love python
ReplyDeleteThis is lovely project
ReplyDeleteText editor like note pad
ReplyDelete