Advertisement
b-7

SourceCode Extractor

b-7
Mar 29th, 2023
818
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.68 KB | None | 0 0
  1. import tkinter as tk
  2. from tkinter import filedialog, messagebox
  3. from tkinter.ttk import Progressbar
  4. import os
  5.  
  6. def extract_code():
  7.     try:
  8.         file_path = filedialog.askopenfilename()
  9.         if file_path:
  10.             with open(file_path, "r") as file:
  11.                 code = file.read()
  12.             save_button = tk.Button(text="Save Source Code", command=lambda: save_code(code))
  13.             save_button.pack(pady=10)
  14.             progress_bar.stop()
  15.             messagebox.showinfo("Success", "Code extracted successfully.")
  16.         else:
  17.             progress_bar.stop()
  18.             messagebox.showwarning("Error", "Please select a file.")
  19.     except Exception as e:
  20.         progress_bar.stop()
  21.         messagebox.showerror("Error", f"Error occurred while extracting code: {e}")
  22.  
  23. def save_code(code):
  24.     try:
  25.         save_path = filedialog.asksaveasfilename(defaultextension=".txt")
  26.         if save_path:
  27.             with open(save_path, "w") as file:
  28.                 file.write(code)
  29.             messagebox.showinfo("Success", "Code saved successfully.")
  30.         else:
  31.             messagebox.showwarning("Error", "Please select a file path to save the code.")
  32.     except Exception as e:
  33.         messagebox.showerror("Error", f"Error occurred while saving code: {e}")
  34.  
  35. def browse_file():
  36.     progress_bar.start()
  37.     extract_code()
  38.  
  39. # Create GUI
  40. root = tk.Tk()
  41. root.title("Code Extractor")
  42. root.geometry("400x200")
  43. root.resizable(False, False)
  44.  
  45. # Create UI elements
  46. browse_button = tk.Button(text="Browse File", command=browse_file)
  47. browse_button.pack(pady=10)
  48.  
  49. progress_bar = Progressbar(root, orient="horizontal", length=200, mode="indeterminate")
  50.  
  51. root.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement