Ir al contenido principal

Botón Cancelar

# -*- coding: utf-8 -*-from Tkinter import *
import Tkinter as tk
import tkMessageBox

global cad


def thamb():
    hamb = var1.get()
    cantidad = cant.get()
    costohamb = 0    if hamb == "Hamburguesa sencilla":
        costohamb = 15    elif hamb == "Hamburguesa Doble":
        costohamb = 25    elif hamb == "Hamburguesa triple":
        costohamb = 35    costo = cantidad * costohamb
    return costo


def comp():
    costocomp = 0    cantidadR = cant1.get()
    cantidadP = cant2.get()
    cantidadB = cant3.get()
    refresco = CheckVar1.get()
    papas = CheckVar2.get()
    burrito = CheckVar3.get()
    if refresco == 1:
        costocomp = costocomp + (15 * cantidadR)
    if papas == 1:
        costocomp = costocomp + (20 * cantidadP)
    if burrito == 1:
        costocomp = costocomp + (18 * cantidadB)
    return costocomp


def impuesto():
    iva = (0.15 * (thamb() + comp()))
    return iva


def limpiarcajas():
    cuadrohamb.delete(0, 'end')
    cuadrorefresco.delete(0, 'end')
    cuadroburrito.delete(0, 'end')
    cuadropapas.delete(0, 'end')
    limpiarbotones()


def limpiarbotones():
    var1.set("No ha selecionado")
    CheckVar1.set(None)
    CheckVar2.set(None)
    CheckVar3.set(None)
    var.set(None)
    rtotalfinal = Label(miFrame, text="            ", bg="yellow", font=("Arial", 14), ).grid(row=9, column=2, pady="1",                                                                                              padx="15", sticky="w")
    riva = Label(miFrame, text="            ", bg="yellow", font=("Arial", 14)).grid(row=8, column=2, pady="1",                                                                                     padx="15", sticky="w")
    rtotal = Label(miFrame, text="            ", bg="yellow", font=("Arial", 14)).grid(row=7, column=2, pady="1",                                                                                       padx="15", sticky="w")
    limpiarlistapedido()


def listapedido():
    cad = ""    hamb = var1.get()
    refresco = CheckVar1.get()
    papas = CheckVar2.get()
    burrito = CheckVar3.get()
    listpedido = Listbox(miFrame, width=50)
    if hamb != "No ha selecionado" or refresco == 1 or papas == 1 or burrito == 1:
        if hamb == "Hamburguesa sencilla":
            cad += "Hamburguesa sencilla $15 c/u"        elif hamb == "Hamburguesa Doble":
            cad += "Hamburguesa Doble $25 c/u"        elif hamb == "Hamburguesa triple":
            cad += "Hamburguesa triple $35 c/u"        listpedido.insert(0, cad)
        # insert        if refresco == 1:
            listpedido.insert(1, "Refresco $15 c/u")
        if papas == 1:
            listpedido.insert(2, "Papas $20 c/u")
        if burrito == 1:
            listpedido.insert(3, "Burrito $18 c/u")
    # DELETE    elif hamb == "No ha selecionado" and refresco == 0 and papas == 0 and burrito == 0:
        listpedido.delete(0)
        listpedido.delete(1)
        listpedido.delete(2)
        listpedido.delete(3)

    listpedido.grid(row=2, column=2, pady="1", padx="4")


def limpiarlistapedido():
    cant.set(0)
    cant1.set(0)
    cant2.set(0)
    cant3.set(0)
    CheckVar1.set(0)
    CheckVar2.set(0)
    CheckVar3.set(0)
    listapedido()
    tkMessageBox.showinfo("Cancelacion exitosa", "Se ha cancelado el pedido, y esta listo para realizar nuevo pedido")


def totali():
    total = thamb() + comp()
    return total


def totalf():
    formapago = var.get()
    totf = 0    if formapago == 1:
        totf = totali() + impuesto()
        iva = impuesto()

    elif formapago == 2:
        totf = totali()
        iva = 0    rtotalfinal = Label(miFrame, text=totf, bg="yellow", font=("Arial", 14), ).grid(row=9, column=2, pady="1",                                                                                    padx="15", sticky="w")
    riva = Label(miFrame, text=iva, bg="yellow", font=("Arial", 14)).grid(row=8, column=2, pady="1", padx="15",                                                                          sticky="w")
    rtotal = Label(miFrame, text=totali(), bg="yellow", font=("Arial", 14)).grid(row=7, column=2, pady="1", padx="15",                                                                                 sticky="w")
    listapedido()


def ocultar(ventana): ventana.withdraw()


raiz = Tk()
raiz.title("ventana primaria")
raiz.resizable(1, 1)  # para permitir agrandar o no el ancho o la altura con el moyuse# raiz.iconbitmap("Hamburger.ico")# raiz.geometry("500x600")raiz.config(bg="orange")
raiz.config(bd=15)
raiz.config(relief="groove")

miFrame = Frame(raiz)
miFrame.pack()
miFrame.config(bg="yellow")
miFrame.config(bd=10)
miFrame.config(relief="sunken")
miFrame.config(cursor="hand2")
# EtiquetasmiLabel1 = Label(miFrame, text="Hamburguesa feliz", fg="red", bg="yellow", font=("Arial Black", 25)).grid(row=0,                                                                                                          column=0,                                                                                                          pady="4")
OrdenH = Label(miFrame, text="Seleccione la hamburguesa", bg="yellow", font=("Arial", 14)).grid(row=1, column=0,                                                                                                pady="1", padx="15",                                                                                                sticky="w")
Pedido = Label(miFrame, text="Pedido:", bg="yellow", font=("Arial", 14)).grid(row=1, column=2, pady="1")
cantidadhamb = Label(miFrame, text="Cantidad de Hamburguesas:", bg="yellow", font=("Arial", 14)).grid(row=2, column=0,                                                                                                      pady="1",                                                                                                      padx="15",                                                                                                      sticky="w")
complementos = Label(miFrame, text="Complementos:", bg="yellow", font=("Arial", 14)).grid(row=3, column=0, pady="1",                                                                                          padx="15", sticky="w")
Cantidadcomp = Label(miFrame, text="Cantidad complementos:", bg="yellow", font=("Arial", 14)).grid(row=3, column=1,                                                                                                   pady="1", padx="15",                                                                                                   sticky="w")
Formadepago = Label(miFrame, text="Forma de pago:", bg="yellow", font=("Arial", 14)).grid(row=7, column=0, pady="1",                                                                                          padx="15", sticky="w")
Total = Label(miFrame, text="Total:", bg="yellow", font=("Arial", 14)).grid(row=7, column=1, pady="1", padx="15",                                                                            sticky="w")
IVA = Label(miFrame, text="IVA:", bg="yellow", font=("Arial", 14)).grid(row=8, column=1, pady="1", padx="15",                                                                        sticky="w")
TotalFinal = Label(miFrame, text="Total final:", bg="yellow", font=("Arial", 14)).grid(row=9, column=1, pady="1",                                                                                       padx="15", sticky="w")

# Lista de opciones desplegablevar1 = tk.StringVar(miFrame)
var1.set("No ha selecionado")
opciones = ["Hamburguesa sencilla", "Hamburguesa Doble", "Hamburguesa triple"]
opcion = tk.OptionMenu(miFrame, var1, *opciones)
opcion.config(width=20)
opcion.grid(row=1, column=1)

c = Listbox(miFrame, width=50).grid(row=2, column=2, pady="1", padx="4")

# Entryscant = tk.IntVar(miFrame)
cant.set(0)
cant1 = tk.IntVar(miFrame)
cant1.set(0)
cant2 = tk.IntVar(miFrame)
cant2.set(0)
cant3 = tk.IntVar(miFrame)
cant3.set(0)
cuadrohamb = Entry(miFrame, textvariable=cant)
cuadrohamb.grid(row=2, column=1, pady="1")
cuadrohamb.config(fg="blue", justify="center")
cuadrorefresco = Entry(miFrame, textvariable=cant1)
cuadrorefresco.grid(row=4, column=1, pady="1")
cuadrorefresco.config(fg="blue", justify="center")
cuadropapas = Entry(miFrame, textvariable=cant2)
cuadropapas.grid(row=5, column=1, pady="1")
cuadropapas.config(fg="blue", justify="center")
cuadroburrito = Entry(miFrame, textvariable=cant3)
cuadroburrito.grid(row=6, column=1, pady="1")
cuadroburrito.config(fg="blue", justify="center")

# CheckbuttonCheckVar1 = IntVar()
CheckVar2 = IntVar()
CheckVar3 = IntVar()
Refresco = Checkbutton(miFrame, text="Refresco", bg="yellow", variable=CheckVar1)
Refresco.grid(row=4, column=0, sticky="w", padx="15")
Refresco.config(onvalue=1, offvalue=0)
Papas = Checkbutton(miFrame, text="Papas", bg="yellow", variable=CheckVar2)
Papas.grid(row=5, column=0, sticky="w", padx="15")
Papas.config(onvalue=1, offvalue=0)
Burrito = Checkbutton(miFrame, text="Burrito", bg="yellow", variable=CheckVar3)
Burrito.grid(row=6, column=0, sticky="w", padx="15")
Burrito.config(onvalue=1, offvalue=0)

# Radiobuttonvar = IntVar()
R1 = Radiobutton(miFrame, text="Tarjeta de credito", bg="yellow", variable=var, value=1)  # , command=sel)R1.grid(row=8, column=0, sticky="w", padx="15")
R2 = Radiobutton(miFrame, text="Efectivo", bg="yellow", variable=var, value=2)  # , command=sel)R2.grid(row=9, column=0, sticky="w", padx="15")

# botonesCancelar = Button(miFrame, text="Cancelar", command=limpiarcajas)
Cancelar.grid(row=10, column=0, sticky="w", padx="15")
Comprar = Button(miFrame, text="Hacer pedido", bg="Green", command=totalf)
Comprar.grid(row=10, column=2, sticky="e", padx="15")
Terminar = Button(raiz, text="Terminar", bg="Red", command=lambda: ocultar(raiz))
Terminar.pack()

raiz.mainloop()

Comentarios

Entradas populares de este blog

Comandos CMD

Todas las versiones de Windows incluyen una serie de comandos que permiten transmitir órdenes directamente al sistema operativo. Son simples instrucciones que se pueden usar de formas diferentes, con la herramienta Símbolo del Sistema o usándolos en archivos batch. El Símbolo del Sistema, Consola de CMD o intérprete de comandos, es una herramienta incluida en todas las versiones de Windows.  Cls:   Este comando limpia la ventana de CMD eliminando el contenido de operaciones anteriores. Exit:   Cierra la ventana de CMD. Si se ha iniciado un comando de procesado por lotes cierra el proceso, pero mantiene CMD abierto. Help:   Muestra todos los comandos disponibles y una breve descripción. Si quieres obtener información sobre un comando en concreto o  cómo formar la sintaxis de un determinado comando , escribe el comando seguido de una barra diagonal y un signo de interrogación. Por ejemplo:  cd /? Cd:  Este es uno de los comandos más útiles par...

Operación y mantenimiento

Archivos log del SGBD Todas las bases de datos de SQL Server tienen un registro de transacciones que registra todas las transacciones y las modificaciones que cada transacción realiza en la base de datos. El registro de transacciones es un componente esencial de la base de datos. Si hay un error del sistema, ese registro será necesario para devolver la base de datos a un estado coherente. El registro de transacciones se debe truncar periódicamente para evitar que se llene. Operaciones compatibles El registro de transacciones permite las siguientes operaciones: Recuperación de transacciones individuales. Recuperación de todas las transacciones incompletas cuando se inicia SQL Server. Puesta al día de una base de datos, un archivo, un grupo de archivos o una página restaurados hasta el momento exacto del error. Permitir replicación transaccional. Compatibilidad con soluciones de alta disponibilidad y recuperación ante desastres: Grupos de disponib...

Redis

Redis es un motor de base de datos open source con licencia BSD. Basa su funcionamiento en el uso de tablas de hashes (clave – valor) y puede llegar a usarse como base de datos persistente. Practica 1: Practica 2: Practica 3: Practica 4: Practica 5: Conexion Python-Redis Practica 1: Practica 2: Practica 3: Practica 4: