Weisen Sie einer Dropdown-Auswahl einen anderen Wert zu

Highline-Gitarren

Ich habe ein Dropdown-Menü mit 7 Auswahlmöglichkeiten für mein Berechnungsprogramm. Ich möchte jeder Auswahl einen anderen Wert zuweisen, damit, wenn ein Benutzer eine Auswahl trifft, der alternative Wert an die Formel für die Berechnung übergeben wird. Wenn der Benutzer beispielsweise 42 auswählt, wäre der alternative Wert 2143, der an den Abschnitt ohms = float(e4.get()) meiner Formel übergeben würde. Wie würde ich das machen? Ich verwende PyCharm.

from tkinter import *
import os
os.system('clear')

root = Tk()
root.title('Pickup Coil Turn Count Calculator')
root.geometry("400x700")
root.configure(bg='#ffc773')


#turn_count holds the math formula for the calculation
def turn_count():
    width, length, ohms, resistance = float(e2.get()), float(e3.get()), float(e4.get()), float(e5.get())
    turn_count = resistance / ohms * 1000 * 12 / ((width * 3.14) + length + length - width * .19) * .969
    count_label['text'] = int(turn_count)

#for the reset button
def clear_fields():
    e1.delete(0, 'end')
    e2.delete(0, 'end')
    e3.delete(0, 'end')
    clicked.set(options[0])
    e5.delete(0, 'end')
    count_label.config(text='')


myLabel = Label(root, text='Enter Core Height', bg='#ffc773')
myLabel.pack(pady=10)
e1 = Entry(root, width=10, justify='center', border=0)
e1.pack()

myLabel = Label(root, text='Enter Core Width', bg='#ffc773')
myLabel.pack(pady=10)
e2 = Entry(root, width=10, justify='center', border=0)
e2.pack()

myLabel = Label(root, text='Enter Core Length', bg='#ffc773')
myLabel.pack(pady=10)
e3 = Entry(root, width=10, justify='center', border=0)
e3.pack()

myLabel = Label(root, text='Select Wire Gauge', bg='#ffc773')
myLabel.pack(pady=10)

#each option would have an alternate value
options = [
    '38',
    '39',
    '40',
    '41',
    '42',
    '43',
    '44',
]

clicked = IntVar()
clicked.set(options[0])

drop = OptionMenu(root, clicked, *options)
drop.pack()

myLabel = Label(root, text='Enter Target Resistance In Ohms', bg='#ffc773')
myLabel.pack(pady=10)
e5 = Entry(root, width=10, justify='center', border=0)
e5.pack()

Button(root, text='Calculate', command=turn_count).pack(pady=40)

myLabel = Label(root, text='Turn Count', bg='#ffc773')
myLabel.pack()

count_label = Label(root, width=10)
count_label.pack()

Button(root, text='Reset', command=clear_fields).pack(pady=30)

root.mainloop()
AST

Wenn Sie die Antwort von @Cambuchi hinzufügen , können Sie Folgendes tun, um sie zu implementieren

options = {
    '42':2143.0,
    '38':1234.0,
    '39':5678.0
}

clicked = StringVar()
clicked.set(list(options.keys())[0])

drop = OptionMenu(root, clicked, *options.keys())
drop.pack()

Beachten Sie, dass ich StringVaranstelle von verwendet habe, IntVarda die Wörterbuchschlüssel Stings sind und wir sie benötigen, um eine Zeichenfolge zurückzugeben, wenn eine getMethode dafür verwendet wird. Sie können die Werte direkt als haben floatund vermeiden, sie später zu übertragen.

ohms = options[clicked.get()]

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

So weisen Sie einer Variablen einen anderen Wert in clojure zu

Weisen Sie der Auswahl von Werten innerhalb einer Variablen einen bedingten Wert zu

So weisen Sie einen Wert einer Variablen aus einer Funktion in einer anderen Funktion in React JS zu

Weisen Sie der Datenbank basierend auf dem in einer anderen Datenbank gespeicherten Wert einen neuen Wert zu

Weisen Sie jedem eindeutigen Wert in einer anderen Spalte einen neuen Wert zu

Weisen Sie der Auswahl in Laravel Collectives einen Wert zu

So greifen Sie von einer anderen Funktion auf ein Strukturarray zu und weisen einen Wert zu

Weisen Sie einer Zelle einen Wert zu, der vom Inhalt einer anderen Zelle abhängt - Excel

Vergleichen Sie Daten innerhalb eines Datenrahmens und weisen Sie einer anderen Variablen einen Wert zu

Gruppieren Sie nach mehreren Spalten und weisen Sie einen Wert aus einer anderen Spalte in R zu

Weisen Sie der Variablen einen Wert zu und verwenden Sie ihn in einer anderen Variablen in Python

Weisen Sie der Klasse einer anderen Klasse einen statischen Wert zu

Weisen Sie einer Struktur, die aus einem anderen Paket deklariert wurde, einen Wert zu

Weisen Sie einer df $ -Spalte aus einem anderen df? Einen Wert zu.

So weisen Sie einer Variablen für eine andere if-Anweisung einen anderen Wert zu

So weisen Sie einer Variablen mit js-basiertem Schalter einen anderen Wert zu

REDSHIFT: Weisen Sie allen Zeilen einen Wert in einer Spalte zu, basierend auf einem bestimmten Wert in einer anderen Spalte

Weisen Sie allen Zeilen einen Wert in einer Spalte zu, basierend auf einem bestimmten Wert in einer anderen Spalte

Weisen Sie der Zufallsstichprobe einer Gruppe einen Wert zu, wobei die Stichprobengröße dem Wert einer anderen Spalte entspricht

Weisen Sie dem Python-Objekt einen anderen Wert zu

So weisen Sie jedem Schalter in HTML einen anderen Wert zu

So weisen Sie einer anderen Klasse in wpf einen Textfeldwert zu

So weisen Sie einen Strukturzeiger aus einer anderen Methode zu

Inkrementieren Sie einen Integer-Zeiger und weisen Sie den Wert des inkrementierten Zeigers einer anderen Variablen in C++ zu

Weisen Sie der Taste in einer Schleife einen Wert zu

Weisen Sie einer awk-Variablen einen Wert zu

Weisen Sie einer neuen Liste mit linq einen Wert zu

Java: Weisen Sie einen Wert in einer einzelnen Zeile zu

Weisen Sie einer Variablen bei einem Fehler einen Wert zu

TOP Liste

heißlabel

Archiv