Untitled
unknown
plain_text
a year ago
1.9 kB
5
Indexable
import tkinter as tk from tkinter import ttk, messagebox from barcode import EAN13, Code128 from barcode.writer import ImageWriter class BarcodeGenerator: def __init__(self, root): self.root = root self.root.title("Generator kodów kreskowych") self.label_type = ttk.Label(root, text="Wybierz typ kodu:") self.label_type.pack(pady=5) self.barcode_type_var = tk.StringVar() self.barcode_type_var.set("EAN13") # Default self.barcode_type_combobox = ttk.Combobox(root, values=["EAN13", "EAN128"], textvariable=self.barcode_type_var) self.barcode_type_combobox.pack(pady=5) self.label_data = ttk.Label(root, text="Enter data:") self.label_data.pack(pady=5) self.entry_data = ttk.Entry(root) self.entry_data.pack(pady=5) self.generate_button = ttk.Button(root, text="Generate Barcode", command=self.generate_code) self.generate_button.pack(pady=10) def generate_code(self): barcode_type = self.barcode_type_var.get() data = self.entry_data.get() if barcode_type == "EAN13": if len(data) != 12 or not data.isdigit(): self.show_error("Invalid input! Please enter a 12-digit number.") return barcode = EAN13(data, writer=ImageWriter()) elif barcode_type == "EAN128": barcode = Code128(data, writer=ImageWriter()) else: self.show_error("Invalid barcode type selected.") return barcode.save(f"{barcode_type.lower()}_code") self.show_info(f"{barcode_type} Code generated successfully for {data}") def show_error(self, message): tk.messagebox.showerror("Error", message) def show_info(self, message): tk.messagebox.showinfo("Information", message) if __name__ == "__main__": root = tk.Tk() app = BarcodeGenerator(root) root.mainloop()
Editor is loading...
Leave a Comment