私は、コードに新しいですし、私は仕事でいくつかのものを解決するために使用する計算のためのいくつかのコードを書いたの追加。「もし」「それから」チェックボタン
私は今、「足」&「メーター」のチェックボタンを追加しようとして立ち往生しています。私はそれらを私の方程式に統合して、それらを手動で事前に変換する必要はありません。私は彼らが2を切り替えるようにする方法を見つけ出すことができたら、私は足のための第2式を追加します。私はこの上で何かを見つけるのは本当に苦労していますので、助けることができるあなたのすべてを願っています
import Tkinter
import math
from Tkinter import *
Lreq = 105
Dref = 1
class compintapp_tk(Tkinter.Tk):
def __init__(self,parent):
Tkinter.Tk.__init__(self,parent)
self.parent = parent
self.initialize()
def initialize(self):
self.grid()
self["bg"] = "grey"
## Title & subtitle labels ---------------------------------------
titlelbl = Tkinter.Label(self, text="Wattage Calculator",
anchor="center",fg="black",bg="darkorange2")
titlelbl.grid(column=0,row=0,columnspan=4,sticky='EW')
## Input Labels --------------------------------------------------
sensitivitylbl = Tkinter.Label(self, text="Loudspeaker sensitivity?",
anchor="w",fg="white",bg="SlateGray4")
sensitivitylbl.grid(column=0,row=2,columnspan=3,sticky='EW')
distancelbl = Tkinter.Label(self, text="Distance from speaker to listening position?",
anchor="w",fg="white",bg="SlateGray4")
distancelbl.grid(column=0,row=3,columnspan=3,sticky='EW')
headroomlbl = Tkinter.Label(self, text="How much headroom for amplifier?",
anchor="w",fg="white",bg="SlateGray4")
headroomlbl.grid(column=0,row=4,columnspan=3,sticky='EW')
wattagelbl = Tkinter.Label(self, text="Total Wattage :",
anchor="w",fg="white",bg="SlateGray4")
wattagelbl.grid(column=0,row=7,columnspan=3,sticky='EW')
## end of input labels ------------------------------------------------
## Input Boxes --------------------------------------------------------
#self.sensitivity = Tkinter.DoubleVar()
#speakersensitivity = Tkinter.Entry(self,textvariable=self.sensitivity)
#speakersensitivity.grid(column=1,row=2,sticky='EW')
self.sensitivity = Tkinter.DoubleVar()
speakersensitivity = Tkinter.Entry(self,textvariable=self.sensitivity)
speakersensitivity.grid(column=3,row=2,sticky='EW')
self.distance = Tkinter.DoubleVar()
spkdistance = Tkinter.Entry(self,textvariable=self.distance)
spkdistance.grid(column=3,row=3,sticky='EW')
self.headroom = Tkinter.IntVar()
spkheadroom = Tkinter.Entry(self,textvariable=self.headroom)
spkheadroom.grid(column=3,row=4, sticky='EW')
## end of input boxes -------------------------------------------------
## Button
button = Tkinter.Button(self,text="C A L C U L A T E",
anchor="w",fg="black",bg="green",
command=self.OnButtonClick)
button.grid(column=0,row=6,columnspan=1)
var = BooleanVar()
c=Checkbutton(self, text="Meters", variable=BooleanVar(),
anchor="center",fg="white",bg="grey25")
c.grid(column=2,row=6,columnspan=1)
c=Checkbutton(self, text="Feet", variable=BooleanVar(),
anchor="center",fg="white",bg="grey25")
c.grid(column=3,row=6,columnspan=1)
# initialize global variables
self.ckbuttonstatus = BooleanVar()
## end of button
## Output labels
self.amt = Tkinter.StringVar()
amtout = Tkinter.Label(self,textvariable=self.amt,
anchor="e",fg="red",bg="gold")
amtout.grid(column=3,row=7,columnspan=1,sticky='EW')
## end of output labels -----------------------------------------------
self.grid_columnconfigure(0,weight=2)
self.resizable(0,0)
def OnButtonClick(self):
Lsens = self.sensitivity.get()
D2 = self.distance.get()
HR = self.headroom.get()
exponent = (Lreq-Lsens+20 * math.log10(D2/1)+HR)/10
amount = 10 ** exponent
self.amt.set(amount)
if __name__ == "__main__":
app = compintapp_tk(None)
app.title('Wattage Calculator')
app.mainloop()
:
はここで、これまでに私のコードです。
? – Nae
'Check Button 'の中で' variable = BooleanVar() 'を使って' {}}ボタンでコード – furas
を正しくフォーマットすると、この 'BooleanVar()'へのアクセス権がないので意味がありません。 'self.var = BooleanVar()'を作成し、 'Checkbutton'に' variable = self.var'を使って 'self.var'にアクセスし、checkbuttonが選択されているかどうか確認する必要があります。 – furas