I am currently facing an issue where I am not able to get a different distinct output from each drop-down menu in Tkinter.
The aim of my code is to get a similar output in the following image attached: "Output of ideal, expected result".

However, this is the current result that I am getting, which is attached in:"Current Result".

Below is my attached code.
I would greatly appreciate any form of advice or help on this.
import tkinter as tk
from tkinter import ttk
class TestFrame(tk.Frame):
def __init__(self):
super().__init__()
self.dimension =('106','108','110','112','114','126','128','130','132','134','136','138','140','146','148','150','152','154','360','380','400','420','440','500', '520', '540',
'560', '580', '600','780','800','820')
self.option_var = tk.IntVar(self)
#self.create_widgets()
#self.create_widgets_1()
paddings = {'padx': 5, 'pady': 5}
label = ttk.Label(self, text='Select the dimension for ODD_X1:').grid(column=0, row=0, sticky=tk.W, **paddings)
#ODD_X1
option_menu = ttk.OptionMenu(
self,
self.option_var,
self.dimension[0],
*self.dimension,
command=self.option_changed)
option_menu.grid(column=1, row=0, sticky=tk.W, **paddings)
self.output_label = ttk.Label(self, foreground='red')
self.output_label.grid(column=0, row=1, sticky=tk.W, **paddings)
paddings = {'padx': 5, 'pady': 5}
ttk.Label(self, text='Select the dimension for ODD_Y1:').grid(column=3, row=0, sticky=tk.W, **paddings)
option_menu = ttk.OptionMenu(
self,
self.option_var,
self.dimension[0],
*self.dimension,
command=self.option_changed)
option_menu.grid(column=4, row=0, sticky=tk.W, **paddings)
self.output_label = ttk.Label(self, foreground='red')
self.output_label.grid(column=4, row=1, sticky=tk.W, **paddings)
paddings = {'padx': 5, 'pady': 5}
ttk.Label(self, text='Select the dimension for ODD_X2:').grid(column=0, row=3, sticky=tk.W, **paddings)
option_menu = ttk.OptionMenu(
self,
self.option_var,
self.dimension[0],
*self.dimension,
command=self.option_changed)
option_menu.grid(column=1, row=3, sticky=tk.W, **paddings)
self.output_label = ttk.Label(self, foreground='red')
self.output_label.grid(column=0, row=4, sticky=tk.W, **paddings)
paddings = {'padx': 5, 'pady': 5}
ttk.Label(self, text='Select the dimension for ODD_Y2:').grid(column=3, row=3, sticky=tk.W, **paddings)
option_menu = ttk.OptionMenu(
self,
self.option_var,
self.dimension[0],
*self.dimension,
command=self.option_changed)
option_menu.grid(column=4, row=3, sticky=tk.W, **paddings)
self.output_label = ttk.Label(self, foreground='red')
self.output_label.grid(column=4, row=5, sticky=tk.W, **paddings)
def option_changed(self, *args):
self.output_label['text'] = f'You selected: {self.option_var.get()}'
class App(tk.Tk):
def __init__(self):
super().__init__()
self.geometry("800x400")
self.title('ABC')
for r in range(5):
self.rowconfigure(r, weight=1)
for c in range(8):
self.columnconfigure(c, weight=1)
self.testFrame1 = TestFrame()
self.testFrame1.grid(row=0, column=0, rowspan=3, columnspan=3, sticky='nsew')
App().mainloop()
variableto all 4 option menus. I t is being constantly updated as you select an option.