pinterest-site-verification=f733925c88b2d69d81e4298adc53ac40 import tkinter as tk from tkinter import messagebox import requests FORMSPREE_ENDPOINT = 'https://formspree.io/f/xlekqpdy' class App: def __init__(self): self.selected_options = {} self.window = tk.Tk() # Create the main window self.create_labels() # Create labels self.create_buttons() # Create buttons self.create_email_entry() # Create email entry field self.create_submit_button() # Create submit button def create_labels(self): labels = ["Dress Type", "Size", "Color", "Sleeve Type", "Fabric Type", "Lace", "Beading", "Train Length"] for label_text in labels: label = tk.Label(self.window, text=label_text + ":") label.pack() def create_buttons(self): button_data = [ { "name": "Dress Type", "options": ['Mermaid', 'Ball Gown', 'Sheath'], # Replace with actual wedding dress types }, { "name": "Size", "options": ['S', 'M', 'L'], # Replace with your own sizes }, { "name": "Color", "options": ['Red', 'Blue', 'Green'], # Replace with your own colors }, { "name": "Sleeve Type", "options": ['Short Sleeve', 'Long Sleeve', 'Sleeveless'], # Replace with actual sleeve types }, { "name": "Fabric Type", "options": ['Silk', 'Lace', 'Tulle'], # Replace with actual fabric types }, { "name": "Lace", "options": ['With Lace', 'Without Lace'], # Replace with actual lace options }, { "name": "Beading", "options": ['With Beading', 'Without Beading'], # Replace with actual beading options }, { "name": "Train Length", "options": ['Short', 'Medium', 'Long'], # Replace with actual train lengths } ] for button_info in button_data: frame = tk.Frame(self.window) frame.pack() label = tk.Label(frame, text=button_info["name"] + ":") label.pack(side=tk.LEFT) buttons = {} for option in button_info["options"]: button = tk.Button( frame, text=option, command=lambda opt=option, btns=buttons, cat=button_info["name"]: self.on_button_selected(cat, opt, btns) ) button.pack(side=tk.LEFT) buttons[option] = button self.selected_options[button_info["name"]] = None def create_email_entry(self): email_label = tk.Label(self.window, text="Email:") email_label.pack() self.email_entry = tk.Entry(self.window) self.email_entry.pack() def create_submit_button(self): submit_button = tk.Button(self.window, text="Submit", command=self.submit_form) submit_button.pack() def on_button_selected(self, category, option, buttons): self.selected_options[category] = option for btn in buttons.values(): btn.config(relief=tk.RAISED) buttons[option].config(relief=tk.SUNKEN) def submit_form(self): selected_options = list(self.selected_options.values()) email = self.email_entry.get() if None in selected_options or not email: messagebox.showerror("Error", "Please select all options and enter your email.") return self.send_email_to_formspree(selected_options, email) def send_email_to_formspree(self, user_choices, email): form_data = { 'email': email, 'choices': str(user_choices) # Convert the choices to a string } try: response = requests.post(FORMSPREE_ENDPOINT, data=form_data) response.raise_for_status() messagebox.showinfo("Success", "Form submitted successfully!") self.clear_selections() except requests.exceptions.RequestException as e: print("Error:", e) messagebox.showerror("Error", "Failed to submit form.") def clear_selections(self): self.selected_options = {} self.email_entry.delete(0, tk.END) self.window.destroy()
top of page
  • What sizes do you carry in your bridal and evening gowns?
    At Sparkle & Sass, we carry sizes 00-26 in stock. However, we may be able to order additional sizes from most of our designers. We understand that every woman's body is unique and beautiful, and we strive to accommodate all sizes. That's why we've made several custom plus size wedding dresses and evening gowns to ensure that every bride and evening wear customer feels confident and radiant on their special day. Reach out to our bridal consultants to learn more about our sizing options and to schedule an appointment to find the perfect dress for you.
  • Where are you located?
    We are located in the Main Street Walk shopping center in Alpharetta, GA about 35 minutes from the Atlanta Airport. Our address is: 480 N. Main Street Suite 216 Alpharetta, GA 30009
  • Do I need an appointment to just look at dresses
    Yes! We are strictly by appointment only and not a traditional gown shop. We hand selected dresses for clients to try on based on their preferences when we meet them over the phone. We eliminate the overwhelming and often frustrating experience of digging through racks and racks of dresses and our clients have a more fun and relaxed experience.
  • What is your return policy?
    All sales are final. There are no refunds, exchanges, store credit may be available on a case by case basis. We take credit card fraud seriously, and will (and have) press charges with the Fulton County District Attorney's Office or relevant police jurisdiction in the case of an online purchase, for any fraudulent credit card chargebacks.
  • Can you order a dress in my size?
    In most cases yes! We can custom order dresses in your size, however you must purchase the dress upfront. There are no refunds for custom orders.
  • Can I take pictures?
    Yes! We encourage you to take photos and tag us on social media @sparkleandsass.me
  • How long does it take to order a custom dress from Sparkle & Sass by Stacie?
    Custom dresses and evening gowns require a minimum of 6 months. The length of the process depends on the complexity of the gown. Our dresses are typically hand-done and can take anywhere from 6-12 months to be completed. Please keep in mind that rush orders may be available for an additional fee, but we recommend allowing ample time for the production of your dream dress.
  • How many people can I bring to my appointment
    We like to keep our showroom intimate and the best experience possible therefor, our max allowed guest are the client plus 4 people of their choice for a max of 5 total guest. For an elevated experience, please inquire about our princess parties.
bottom of page