def __init__(self): self.root = ttk.Frame() # Get Train Set get_train_set_frame = ttk.Labelframe(self.root, text="Get Train Set") get_train_set_frame.grid(column=0, row=0) file_path = tk.StringVar(value="") ttk.Label(get_train_set_frame, text="Train File Path").grid(column=0, row=0) ttk.Entry(get_train_set_frame, textvariable=file_path).grid(column=1, row=0) ttk.Button(get_train_set_frame, text="Read Csv", command=lambda: self.readCsv(file_path)).grid(column=2, row=0) self.input_list = tk.Listbox(get_train_set_frame) self.input_list.grid(column=0, row=1) self.input_list.bind("<Double-Button-1>", self.addPredictor) self.input_list.bind("<Double-Button-3>", self.addTarget) self.predictor_list = tk.Listbox(get_train_set_frame) self.predictor_list.grid(column=1, row=1) self.predictor_list.bind("<Double-Button-1>", self.ejectPredictor) self.target_list = tk.Listbox(get_train_set_frame) self.target_list.grid(column=2, row=1) self.target_list.bind("<Double-Button-1>", self.ejectTarget) ttk.Button(get_train_set_frame, text="Add Predictor", command=self.addPredictor).grid(column=1, row=2) ttk.Button(get_train_set_frame, text="Eject Predictor", command=self.ejectPredictor).grid(column=1, row=3) ttk.Button(get_train_set_frame, text="Add Target", command=self.addTarget).grid(column=2, row=2) ttk.Button(get_train_set_frame, text="Eject Target", command=self.ejectTarget).grid(column=2, row=3) # Model testing and validation model_validation_frame = ttk.Labelframe( self.root, text="Model testing and validation") model_validation_frame.grid(column=0, row=1) self.do_forecast_option = tk.IntVar(value=0) tk.Checkbutton(model_validation_frame, text="Do Forecast", offvalue=0, onvalue=1, variable=self.do_forecast_option).grid(column=0, row=0, columnspan=2) self.validation_option = tk.IntVar(value=0) self.random_percent_var = tk.IntVar(value=70) self.cross_val_var = tk.IntVar(value=5) tk.Radiobutton(model_validation_frame, text="No validation, use all data rows", value=0, variable=self.validation_option).grid(column=0, row=1, columnspan=2, sticky=tk.W) tk.Radiobutton(model_validation_frame, text="Random percent", value=1, variable=self.validation_option).grid(column=0, row=2, sticky=tk.W) tk.Radiobutton(model_validation_frame, text="K-fold cross-validation", value=2, variable=self.validation_option).grid(column=0, row=3, sticky=tk.W) tk.Radiobutton(model_validation_frame, text="Leave one out cross-validation", value=3, variable=self.validation_option).grid(column=0, row=4, columnspan=2, sticky=tk.W) ttk.Entry(model_validation_frame, textvariable=self.random_percent_var, width=8).grid(column=1, row=2) ttk.Entry(model_validation_frame, textvariable=self.cross_val_var, width=8).grid(column=1, row=3) self.lookback_option = tk.IntVar(value=0) self.lookback_val_var = tk.IntVar(value="") tk.Checkbutton(model_validation_frame, text="Lookback", offvalue=0, onvalue=1, variable=self.lookback_option).grid(column=0, row=5) tk.Entry(model_validation_frame, textvariable=self.lookback_val_var, width=8).grid(column=1, row=5) # Sigma Options sigma_options_frame = ttk.LabelFrame(self.root, text="Sigma Options") sigma_options_frame.grid(column=1, row=0) self.sigma_var = tk.DoubleVar(value=0.4) ttk.Label(sigma_options_frame, text="Sigma Value: ").grid(column=0, row=0) ttk.Entry(sigma_options_frame, textvariable=self.sigma_var, width=12).grid(column=1, row=0) self.find_sigma_option = tk.IntVar(value=0) tk.Checkbutton(sigma_options_frame, text="Find best Sigma", offvalue=0, onvalue=1, variable=self.find_sigma_option, command=self.openEntries).grid(column=0, row=1, columnspan=2) self.minmax_sigma_values = [ tk.DoubleVar(value=""), tk.DoubleVar(value=""), tk.IntVar(value="") ] self.sigma_find_list = [[ ttk.Label(sigma_options_frame, text=j + "Sigma: ").grid(column=0, row=i + 2, pady=5), ttk.Entry(sigma_options_frame, textvariable=self.minmax_sigma_values[i], state=tk.DISABLED, width=12) ] for i, j in enumerate(["Min. ", "Max. "])] [ j[1].grid(column=1, row=i + 2) for i, j in enumerate(self.sigma_find_list) ] ttk.Label(sigma_options_frame, text="Search Steps: ").grid(column=0, row=4, pady=5) ttk.Entry(sigma_options_frame, textvariable=self.minmax_sigma_values[2], width=12).grid(column=1, row=4) self.score = tk.DoubleVar(value="") ttk.Button(sigma_options_frame, text="Create Model", command=self.createModel).grid(column=0, row=5, columnspan=2) ttk.Label(sigma_options_frame, text="Score: ").grid(column=0, row=6) ttk.Entry(sigma_options_frame, textvariable=self.score).grid(column=1, row=6) # Test Model test_model_frame = ttk.LabelFrame(self.root, text="Test Frame") test_model_frame.grid(column=1, row=1) ## Test Model Main test_model_main_frame = ttk.LabelFrame(test_model_frame, text="Test Model") test_model_main_frame.grid(column=0, row=0) forecast_num = tk.IntVar(value="") ttk.Label(test_model_main_frame, text="# of Forecast").grid(column=0, row=0) ttk.Entry(test_model_main_frame, textvariable=forecast_num).grid(column=1, row=0) ttk.Button(test_model_main_frame, text="Values", command=self.showPredicts).grid(column=2, row=0) test_file_path = tk.StringVar() ttk.Label(test_model_main_frame, text="Test File Path").grid(column=0, row=1) ttk.Entry(test_model_main_frame, textvariable=test_file_path).grid(column=1, row=1) ttk.Button(test_model_main_frame, text="Get Test Set", command=lambda: self.getTestSet(test_file_path)).grid( column=2, row=1) ttk.Button(test_model_main_frame, text="Test Model", command=lambda: self.forecast(forecast_num.get())).grid( column=2, row=3) ttk.Button(test_model_main_frame, text="Actual vs Forecast Graph", command=self.vsGraph).grid(column=0, row=4, columnspan=3) ## Test Model Metrics test_model_metrics_frame = ttk.LabelFrame(test_model_frame, text="Test Metrics") test_model_metrics_frame.grid(column=1, row=0) test_metrics = ["NMSE", "RMSE", "MAE", "MAPE", "SMAPE"] self.test_metrics_vars = [ tk.DoubleVar(), tk.DoubleVar(), tk.DoubleVar(), tk.DoubleVar(), tk.DoubleVar(), tk.DoubleVar() ] for i, j in enumerate(test_metrics): ttk.Label(test_model_metrics_frame, text=j).grid(column=0, row=i) ttk.Entry(test_model_metrics_frame, textvariable=self.test_metrics_vars[i]).grid(column=1, row=i) # Customize Train Set customize_train_set_frame = ttk.LabelFrame(self.root, text="Customize Train Set") customize_train_set_frame.grid(column=0, row=2) self.scale_var = tk.StringVar(value="None") ttk.Label(customize_train_set_frame, text="Scale Type").grid(column=0, row=0) ttk.OptionMenu(customize_train_set_frame, self.scale_var, "None", "None", "StandardScaler", "MinMaxScaler").grid(column=0, row=1)
sticky=tk.E + tk.W, padx=2, pady=2) tk.Button(root, text="Replace").grid(row=2, column=10, sticky=tk.E + tk.W, padx=2, pady=2) tk.Button(root, text="Replace All").grid(row=3, column=10, sticky=tk.E + tk.W, padx=2, pady=2) tk.Checkbutton(root, text="Match Whole Word Only").grid(row=2, column=1, columnspan=4, sticky=tk.W) tk.Checkbutton(root, text="Match Case").grid(row=3, column=1, columnspan=4, sticky=tk.W) tk.Checkbutton(root, text="Wrap Around").grid(row=4, column=1, columnspan=4, sticky=tk.W) tk.Label(root, text="Direction: ").grid(row=2, column=3, columnspan=4, sticky=tk.E) tk.Radiobutton(root, text="up", value=1).grid(row=3,
def __init__(self, controller): self.controller = controller self.button_heights = 1 self.button_widths = 15 self.label_heights = 1 self.label_widths = 15 self.entry_widths = 15 self.tl_bbd_options = tk.Toplevel() self.tl_bbd_options.title('BBD options') self.tl_bbd_options.resizable(width=False, height=False) self.tl_bbd_options.wm_protocol('WM_DELETE_WINDOW', self.tl_bbd_options.withdraw) self.l_scaling = tk.Label(self.tl_bbd_options, text='Scaling:').grid( row=0, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.om_scaling = tk.OptionMenu( self.tl_bbd_options, self.controller.options_menu.s_scaling, *self.controller.options_menu.o_scaling) self.om_scaling.config() self.om_scaling.grid(row=0, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.e_scaling = tk.Entry( self.tl_bbd_options, textvariable=self.controller.options_menu.s_scales).grid( row=0, column=2, sticky=tk.N + tk.S + tk.E + tk.W) self.l_aspect_ratios = tk.Label(self.tl_bbd_options, text='Aspect ratios:').grid( row=1, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.om_aspect_ratios = tk.OptionMenu( self.tl_bbd_options, self.controller.options_menu.s_aspect_ratios, *self.controller.options_menu.o_aspect_ratios) self.om_aspect_ratios.config() self.om_aspect_ratios.grid(row=1, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.e_aspect_ratios = tk.Entry( self.tl_bbd_options, textvariable=self.controller.options_menu.s_ARs).grid( row=1, column=2, sticky=tk.N + tk.S + tk.E + tk.W) self.l_n_classes = tk.Label(self.tl_bbd_options, text='Number of classes:').grid( row=2, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.e_n_classes = tk.Entry( self.tl_bbd_options, textvariable=self.controller.options_menu.s_n_classes).grid( row=2, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_steps = tk.Label(self.tl_bbd_options, text='Steps:').grid( row=3, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.e_steps = tk.Entry( self.tl_bbd_options, textvariable=self.controller.options_menu.s_steps).grid( row=3, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_offsets = tk.Label(self.tl_bbd_options, text='Offsets:').grid( row=4, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.e_offsets = tk.Entry( self.tl_bbd_options, textvariable=self.controller.options_menu.s_offsets).grid( row=4, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_variances = tk.Label(self.tl_bbd_options, text='Variances:').grid(row=5, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.e_variances = tk.Entry( self.tl_bbd_options, textvariable=self.controller.options_menu.s_variances).grid( row=5, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_conf_thresh = tk.Label(self.tl_bbd_options, text='Confidence threshold:').grid( row=6, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.e_conf_thresh = tk.Entry( self.tl_bbd_options, textvariable=self.controller.options_menu.s_conf_thresh).grid( row=6, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_iou_thresh = tk.Label(self.tl_bbd_options, text='IoU threshold:').grid( row=7, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.e_iou_thresh = tk.Entry( self.tl_bbd_options, textvariable=self.controller.options_menu.s_iou_thresh).grid( row=7, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_top_k = tk.Label(self.tl_bbd_options, text='Top k:').grid( row=8, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.e_top_k = tk.Entry( self.tl_bbd_options, textvariable=self.controller.options_menu.s_top_k).grid( row=8, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_nms_max_output = tk.Label(self.tl_bbd_options, text='NMS maximum output size:').grid( row=9, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.e_nms_max_output = tk.Entry( self.tl_bbd_options, textvariable=self.controller.options_menu.s_nms_max_output).grid( row=9, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_coords_type = tk.Label(self.tl_bbd_options, text='Coordinate type:').grid( row=10, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.om_coords_type = tk.OptionMenu( self.tl_bbd_options, self.controller.options_menu.s_coords_type, *self.controller.options_menu.o_coords_type) self.om_coords_type.config() self.om_coords_type.grid(row=10, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_2_for_1 = tk.Label(self.tl_bbd_options, text='Two boxes for AR=1:').grid( row=11, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.c_2_for_1 = tk.Checkbutton( self.tl_bbd_options, variable=self.controller.options_menu.bool_2_for_1).grid( row=11, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_clip_boxes = tk.Label(self.tl_bbd_options, text='Clip boxes:').grid( row=12, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.c_clip_boxes = tk.Checkbutton( self.tl_bbd_options, variable=self.controller.options_menu.bool_clip_boxes).grid( row=12, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_norm_coords = tk.Label(self.tl_bbd_options, text='Normalize coordinates:').grid( row=13, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.c_norm_coords = tk.Checkbutton( self.tl_bbd_options, variable=self.controller.options_menu.bool_norm_coords).grid( row=13, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_pos_iou_thresh = tk.Label(self.tl_bbd_options, text='Positive IoU threshold:').grid( row=14, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.e_pos_iou_thresh = tk.Entry( self.tl_bbd_options, textvariable=self.controller.options_menu.s_pos_iou_thresh).grid( row=14, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.l_neg_iou_limit = tk.Label(self.tl_bbd_options, text='Negative IoU limit:').grid( row=15, column=0, sticky=tk.N + tk.S + tk.E + tk.W) self.e_neg_iou_limit = tk.Entry( self.tl_bbd_options, textvariable=self.controller.options_menu.s_neg_iou_limit).grid( row=15, column=1, sticky=tk.N + tk.S + tk.E + tk.W) self.tl_bbd_options.withdraw()
def __init__(self, logger): self.logger = logger self.drawcolors = ['white', 'black', 'red', 'yellow', 'blue', 'green'] root = Tkinter.Tk() root.title("ImageViewTk Example") #root.set_border_width(2) #root.connect("delete_event", lambda w, e: self.quit(w)) self.root = root #self.select = FileSelection.FileSelection() vbox = Tkinter.Frame(root, relief=Tkinter.RAISED, borderwidth=1) vbox.pack(side=Tkinter.TOP, fill=Tkinter.BOTH, expand=1) canvas = Tkinter.Canvas(vbox, bg="grey", height=512, width=512) canvas.pack(side=Tkinter.TOP, fill=Tkinter.BOTH, expand=1) fi = ImageViewCanvas(logger) fi.set_widget(canvas) #fi.set_redraw_lag(0.0) fi.enable_autocuts('on') fi.set_autocut_params('zscale') fi.enable_autozoom('on') fi.enable_draw(False) # tk seems to not take focus with a click fi.set_enter_focus(True) fi.set_callback('cursor-changed', self.cursor_cb) fi.set_bg(0.2, 0.2, 0.2) fi.ui_set_active(True) fi.show_pan_mark(True) self.fitsimage = fi bd = fi.get_bindings() bd.enable_all(True) # canvas that we will draw on DrawingCanvas = fi.getDrawClass('drawingcanvas') canvas = DrawingCanvas() canvas.enable_draw(True) #canvas.enable_edit(True) canvas.set_drawtype('rectangle', color='blue') canvas.set_surface(fi) self.canvas = canvas # add canvas to view fi.add(canvas) canvas.ui_set_active(True) fi.configure(512, 512) hbox = Tkinter.Frame(root) hbox.pack(side=Tkinter.BOTTOM, fill=Tkinter.X, expand=0) self.readout = Tkinter.Label(root, text='') self.readout.pack(side=Tkinter.BOTTOM, fill=Tkinter.X, expand=0) self.drawtypes = fi.get_drawtypes() ## wdrawtype = ttk.Combobox(root, values=self.drawtypes, ## command=self.set_drawparams) ## index = self.drawtypes.index('ruler') ## wdrawtype.current(index) wdrawtype = Tkinter.Entry(hbox, width=12) wdrawtype.insert(0, 'rectangle') wdrawtype.bind("<Return>", self.set_drawparams) self.wdrawtype = wdrawtype # wdrawcolor = ttk.Combobox(root, values=self.drawcolors, # command=self.set_drawparams) # index = self.drawcolors.index('blue') # wdrawcolor.current(index) wdrawcolor = Tkinter.Entry(hbox, width=12) wdrawcolor.insert(0, 'blue') wdrawcolor.bind("<Return>", self.set_drawparams) self.wdrawcolor = wdrawcolor self.vfill = Tkinter.IntVar() wfill = Tkinter.Checkbutton(hbox, text="Fill", variable=self.vfill) self.wfill = wfill walpha = Tkinter.Entry(hbox, width=12) walpha.insert(0, '1.0') walpha.bind("<Return>", self.set_drawparams) self.walpha = walpha wclear = Tkinter.Button(hbox, text="Clear Canvas", command=self.clear_canvas) wopen = Tkinter.Button(hbox, text="Open File", command=self.open_file) wquit = Tkinter.Button(hbox, text="Quit", command=lambda: self.quit(root)) for w in (wquit, wclear, walpha, Tkinter.Label(hbox, text='Alpha:'), wfill, wdrawcolor, wdrawtype, wopen): w.pack(side=Tkinter.RIGHT)
# 与考生类别关联的变量,1:本科学生;0:专科学生,默认为本科学生 stuType = tkinter.IntVar() stuType.set(1) radio1 = tkinter.Radiobutton(win, variable=stuType, value=1, text='本科学生') radio1.grid(row=5, column=2, pady=5) radio2 = tkinter.Radiobutton(win, variable=stuType, value=0, text='专科学生') radio2.grid(row=5, column=3) # 与是否英语专业关联的变量 major = tkinter.IntVar() major.set(0) # 复选框,选中时变量值为1,#未选中时变量值为0 checkmajor = tkinter.Checkbutton(win, text='是否英语专业?', variable=major, onvalue=1, offvalue=0) checkmajor.grid(row=7, column=1, pady=5) # 添加按钮单击事件处理函数 def addInformation(): result = ' 学生姓名:' + entryName.get() result = result + '; 省份:' + comboPrvince.get() result = result + '; 地区:' + comboCity.get() result = result + '; 类别:' + ('本科学生' if stuType.get() else '专科学生') result = result + '; 英语专业:' + ('Yes' if major.get() else 'No') listboxStudents.insert(0, result)
net_comboxlist.place(x=130, y=50) select_checkpoint = tk.Label(top, text="Select Checkpoint:") select_checkpoint.place(x=10, y=80) checkpoint = tk.Entry(top, width=28) checkpoint.place(x=130, y=80) checkpoint.insert(tk.INSERT, "ckpt/model_augemented.pkl") Image_floder = tk.Label(top, text="Image Folder:") Image_floder.place(x=10, y=110) imagedir = tk.Entry(top, width=28) imagedir.place(x=130, y=110) imagedir.insert(tk.INSERT, "attacks/MNIST/FGSM_ms/hacked_data") use_cuda = tk.IntVar() #用来表示按钮是否选中 c1 = tk.Checkbutton(top, text='Use CUDA', variable=use_cuda) c1.place(x=350, y=40) Label1 = tk.Label(top, text="Scale Start:") Label1.place(x=10, y=150) s1 = tk.Entry(top, width=5) s1.place(x=90, y=150) s1.insert(tk.INSERT, "0") Label2 = tk.Label(top, text="Scale End:") Label2.place(x=10, y=180) s2 = tk.Entry(top, width=5) s2.place(x=90, y=180) s2.insert(tk.INSERT, "2") Label3 = tk.Label(top, text="Scale Number:")
top1.mainloop() # Create button to open toplevel1 button = tk.Button(window, text="Abrir Grafo", command=open_Toplevel1) # position the button button.place(x=155, y=50) Checkbutton1 = tk.IntVar() Checkbutton2 = tk.IntVar() Button1 = tk.Checkbutton(window, text="Aleatória", variable=Checkbutton1, onvalue=1, offvalue=0, height=2, width=10) Button2 = tk.Checkbutton(window, text="Definida", variable=Checkbutton2, onvalue=1, offvalue=0, height=2, width=10) # function to be called when button-2 of mouse is pressed def pressed2(event):
def __init__(self): util = Util() root = tk.Tk() root.title("Smart Gcc GUI") width_of_window = 600 height_of_window = 700 canvas = tk.Canvas(root, width=width_of_window, height=height_of_window) canvas.pack() checkCompile = tk.BooleanVar() checkDebug = tk.BooleanVar() checkLink = tk.BooleanVar() ######## basicList = { 'checkCompile': checkCompile, 'checkDebug': checkDebug, 'checkLink': checkLink } ######## """ Background frame """ frame0 = tk.Frame(root, bg="#8C8C8C") frame0.place(relx=0, rely=0, relwidth=1, relheight=1) """ Frame - switch user mode """ lbl_user = tk.Label(frame0, text="Expert", font="TimesNewRoman", bg="#8C8C8C", padx=4) lbl_user.place(relx=0.02, rely=0.02) btn_switch = tk.Button(frame0, text="Switch mode", bd=3, activebackground="#BCE27F", command=lambda: self.askSwitchMode(root)) btn_switch.place(relx=0.95, rely=0.02, anchor="ne") """ Frame 2 - output window """ # The out put widget frame2 = tk.Frame(frame0, bg="#668E39", bd=2) frame2.place(relx=0.01, rely=0.5, relwidth=0.98, relheight=0.5) S = tk.Scrollbar(frame2, bd=3) T = tk.Text(frame2, height=4, width=400, background="black", foreground="white", font=("sans-serif", 10)) S.pack(side=tk.RIGHT, fill=tk.Y) T.pack(side=tk.LEFT, fill=tk.Y) S.config(command=T.yview) T.config(yscrollcommand=S.set) """ Frame 1 - run button """ util.center_window(width_of_window, height_of_window, root) frame1 = tk.Frame(frame0, bg="#BCE27F", bd=3) frame1.place(relx=0.5, rely=0.4, relwidth=0.3, relheight=0.07, anchor='n') btn_run = tk.Button(frame1, text="Run Command", width=6, bg="#EFEEEA", activebackground="#BCE27F", bd=1, command=lambda: self.runCommand(T, basicList)) btn_run.place(relx=0.5, relwidth=1, relheight=1, anchor='n') """ Frame 3 - File picker & Label """ frame3 = tk.Frame(frame0, bg="#241C15", bd=2) frame3.place(relx=0.02, rely=0.1, relwidth=0.5, relheight=0.05) lbl_file = tk.Label(frame3, text=self.filename, bg="#241C15", fg="#8C8C8C") lbl_file.place(relx=0.21) btn_file = tk.Button(frame3, text="File", width=3, bg="#F6F6F4", command=lambda: self.openFileDialog(lbl_file)) btn_file.place(relwidth=0.2, relheight=1) """ Frame 4 - Checkbox and options frame """ ######## frame4 = tk.Frame(frame0, bg="#241C15", bd=2) frame4.place(relx=0.02, rely=0.2, relwidth=0.45, relheight=0.05) chk_compile = tk.Checkbutton(frame4, text="Compile", variable=checkCompile, selectcolor="#BCE27F") chk_link = tk.Checkbutton(frame4, text="Link", variable=checkLink, selectcolor="#BCE27F") chk_debug = tk.Checkbutton(frame4, text="Debug", variable=checkDebug, selectcolor="#BCE27F") chk_compile.place(relwidth=0.33, relheight=1) chk_debug.place(relx=0.7, relwidth=0.33, relheight=1) chk_link.place(relx=0.35, relwidth=0.33, relheight=1) """ Typical user options """ codeGenerationOptions = cd.gcc_codegeneration.values() codeGenerationOption = tk.StringVar() codeGenerationOption.set("Code generation") codeOptimizationOptions = cd.gcc_codeoptimization.values() codeOptimizationOption = tk.StringVar() codeOptimizationOption.set("Code optimization") frameTOptions = tk.Frame(frame0, bg="#241C15", bd=2) frameTOptions.place(relx=0.02, rely=0.27, relwidth=0.9, relheight=0.05) btn_cg = tk.OptionMenu(frameTOptions, codeGenerationOption, *codeGenerationOptions, command=lambda x: self.typicalUserOption(x)) btn_cg.place(relx=0, rely=0, relwidth=0.3, relheight=1) btn_co = tk.OptionMenu(frameTOptions, codeOptimizationOption, *codeOptimizationOptions, command=lambda x: self.typicalUserOption(x)) btn_co.place(relx=0.35, rely=0, relwidth=0.3, relheight=1) """ Expert user options """ developerOptions = cd.gcc_developeroptions.values() developerOption = tk.StringVar() developerOption.set("Developer") btn_dev = tk.OptionMenu(frameTOptions, developerOption, *developerOptions, command=lambda x: self.typicalUserOption(x)) btn_dev.place(relx=0.7, rely=0, relwidth=0.3, relheight=1) """ Frame 5 - All options menu """ root.mainloop()
label.config(text="Nice choice") def pick_SecondBreakfast(): #for the second breakfast choice label.config(text="Something special!") def pick_Lunch(): #for Lunch choice label.config(text="Are you sure?") def pick_Dinner(): #for Dinner choice label.config(text="so good!") m = tkinter.Tk() # where m is the name of the main window object m.title('Favorite Meal') label = tkinter.Label(m, text="Waiting") label.grid(row=5) var1 = tkinter.IntVar() check = tkinter.Checkbutton(m, text="Breakfast", variable=var1, command=pick_Breakfast).grid(row=0) var2 = tkinter.IntVar() check = tkinter.Checkbutton(m, text="Second Breakfast", variable=var2, command=pick_SecondBreakfast).grid(row=1) var3 = tkinter.IntVar() check = tkinter.Checkbutton(m, text="Lunch", variable=var3, command=pick_Lunch).grid(row=2) var4 = tkinter.IntVar() check = tkinter.Checkbutton(m, text="Dinner", variable=var4, command=pick_Dinner).grid(row=3) exit_button = tkinter.Button(m, text='Exit', width=25, command=m.destroy) exit_button.grid(row=6) m.mainloop() # infinite loop that waits for events to happen
def __init__(self, master, app, *args, **kwargs): tk.Frame.__init__(self, master, args, **kwargs) self.app = app self.row1 = tk.Frame(self) self.row1.pack(fill=tk.X) self.statusText = tk.Label(self.row1, fg='#000099', font='Helvetica 10', text='...') # self.statusText.grid(row=0, column=1, padx=(10, 10)) # self.statusText.pack(side=tk.LEFT, padx=(10, 10)) self.loadFromFileButton = tk.Button( self.row1, text='Load from file', command=self.load_from_file_and_show) # self.loadFromFileButton.grid(row=0, column=1, padx=5, pady=5) self.loadFromFileButton.pack(side=tk.LEFT, padx=5, pady=5) self.saveToFileButton = tk.Button(self.row1, text='Save to file', command=self.save_to_file) # self.saveToFileButton.grid(row=0, column=2, padx=5) self.saveToFileButton.pack(side=tk.LEFT, padx=5) self.rewriteFileFlag = tk.BooleanVar(self) self.rewriteFileFlag.set(0) self.rewriteFileRadio = tk.Radiobutton(self.row1, text='rewrite file', variable=self.rewriteFileFlag, value=1) # self.rewriteFileRadio.grid(row=0, column=3) self.rewriteFileRadio.pack(side=tk.LEFT) tooltip.Hovertip(self.rewriteFileRadio, text='All records in file will be removed') self.addRecordsRadio = tk.Radiobutton(self.row1, text='add records', variable=self.rewriteFileFlag, value=0) self.addRecordsRadio.pack(side=tk.LEFT) tooltip.Hovertip(self.addRecordsRadio, text='New records will be added in existing file') self.rewriteRecordsFlag = tk.BooleanVar(self) self.rewriteRecordsFlag.set(0) self.rewriteRecordsCheckbox = tk.Checkbutton( self.row1, text='rewrite records', variable=self.rewriteRecordsFlag, onvalue=1, offvalue=0) # self.rewriteRecordsCheckbox.grid(row=0, column=4) self.rewriteRecordsCheckbox.pack(side=tk.LEFT) tooltip.Hovertip( self.rewriteRecordsCheckbox, text='If a record exists in file, it will be replaced') self.showSizeButton = tk.Button(self.row1, text='Show number', command=self.show_size) # self.showSizeButton.grid(row=0, column=5) self.showSizeButton.pack(side=tk.LEFT) self.clearMemoryButton = tk.Button(self.row1, text='Clear memory', command=self.clear_memory) self.clearMemoryButton.pack(side=tk.LEFT, padx=5)
def __init__(self, parent, controller): tk.Frame.__init__(self, parent) self.controller = controller for i in range(3): self.grid_columnconfigure(i, weight=1) self.ID_Var = tk.IntVar() self.ID_Var.set(1) self.offset_Var = tk.IntVar() id_box = tk.Canvas(self, width=int(2 * (self.controller.app_width / 9)), height=int(self.controller.app_height / 6), bg="white", bd=2) id_box.grid(row=0, column=0, padx=10, pady=5, sticky="w") id_box.grid_propagate(0) for k in range(3): id_box.grid_columnconfigure(k, weight=1) if i < 2: id_box.grid_rowconfigure(k, weight=1) id_heading = tk.Label(id_box, bg="turquoise3", fg="white", text="ID", font=self.controller.heading_font) id_heading.grid(row=0, column=0, columnspan=3, sticky="new", padx=2, pady=2) id_label = tk.Label(id_box, bg="white", fg="Black", text="Servo ID:", font=self.controller.label_font) id_label.grid(row=1, column=0, pady=20) id_vcmd = (self.register(self.id_validate), '%P') self.id_entry = tk.Entry(id_box, validate='key', validatecommand=id_vcmd, width=6, font=self.controller.label_font, textvariable=self.ID_Var) self.id_entry.grid(row=1, column=2) deviation_box = tk.Canvas(self, width=int(2 * (self.controller.app_width / 9)), height=int(self.controller.app_height / 6), bg="white", bd=2) deviation_box.grid(row=1, column=0, padx=10, pady=5, sticky="w") deviation_box.grid_propagate(0) for j in range(2): deviation_box.grid_columnconfigure(j, weight=1) deviation_heading = tk.Label(deviation_box, bg="turquoise3", fg="white", text="Deviation", font=self.controller.heading_font) deviation_heading.grid(row=0, column=0, columnspan=2, sticky="new", padx=2, pady=2) self.deviation_entry = tk.Entry(deviation_box, width=4, textvariable=self.offset_Var) self.deviation_entry.grid(row=1, column=0, pady=18) deviation_scale = tk.Scale(deviation_box, orient="horizontal", bg="white", from_=-125, to=125, troughcolor="gray90", highlightthickness=0, variable=self.offset_Var, command=self.updateDeviation) deviation_scale.grid(row=1, column=1, sticky="ew", padx=5, pady=(0, 15)) angle_box = tk.Canvas(self, width=int(2 * (self.controller.app_width / 9)), height=int(self.controller.app_height / 3), bg="white", bd=2) angle_box.grid(row=2, column=0, padx=10, pady=5, sticky="w") angle_box.grid_propagate(0) angle_box.grid_columnconfigure(0, weight=1) angle_heading = tk.Label(angle_box, bg="turquoise3", fg="white", text="Angle", font=self.controller.heading_font) angle_heading.grid(row=0, column=0, sticky="new", padx=2, pady=2) self.angleScale1 = tk.Scale(angle_box, orient="horizontal", bg="white", from_=0, to=1000, troughcolor="gray90", highlightthickness=0) self.angleScale1.grid(row=1, column=0, sticky="ew", padx=5, pady=20) self.angleScale1.set(1000) self.angleScale2 = tk.Scale(angle_box, orient="horizontal", bg="white", from_=0, to=1000, troughcolor="gray90", highlightthickness=0) self.angleScale2.grid(row=2, column=0, sticky="ew", padx=5) led_box = tk.Canvas(self, width=int(3 * (self.controller.app_width / 9)), bd=2, height=int(2 * (self.controller.app_height / 6)), bg="white") led_box.grid(row=0, column=1, pady=5, sticky="nw", columnspan=2, rowspan=2) led_box.grid_propagate(0) for ii in range(4): led_box.grid_rowconfigure(ii, weight=1) if ii < 2: led_box.grid_columnconfigure(ii, weight=1) led_heading = tk.Label(led_box, bg="turquoise3", fg="white", text="LED Control", font=self.controller.heading_font) led_heading.grid(row=0, column=0, sticky="new", columnspan=2, padx=2, pady=2) led_button = tk.Button(led_box, text="ON", state='disabled') led_button.grid(row=1, column=0, padx=5, pady=5, rowspan=3) heat_check = tk.Checkbutton(led_box, text="Over Heat", highlightthickness=0, font=self.controller.label_font, bg="white", state='disabled') heat_check.grid(row=1, column=1, sticky="w") voltage_check = tk.Checkbutton(led_box, text="Over Voltage", highlightthickness=0, font=self.controller.label_font, bg="white", state='disabled') voltage_check.grid(row=2, column=1, sticky="w") pos_check = tk.Checkbutton(led_box, text="Over Position", highlightthickness=0, font=self.controller.label_font, bg="white", state='disabled') pos_check.grid(row=3, column=1, sticky="w") led_box.config(state='disabled') voltage_box = tk.Canvas( self, width=int((self.controller.app_width / 6) + 2), height=int(2 * (self.controller.app_height / 6) + 2), bg="white", bd=2) voltage_box.grid(row=2, column=1, pady=5, sticky="nw") voltage_box.grid_propagate(0) for jj in range(2): voltage_box.grid_columnconfigure(jj, weight=1) voltage_box.grid_rowconfigure(jj, weight=1) volt_heading = tk.Label(voltage_box, bg="turquoise3", fg="white", text="Voltage", font=self.controller.heading_font) volt_heading.grid(row=0, column=0, sticky="new", columnspan=2, padx=2, pady=2) self.voltScale1 = tk.Scale(voltage_box, bg="white", from_=12, to=4.5, resolution=0.1, troughcolor="gray90", highlightthickness=0, label='L') self.voltScale1.grid(row=1, column=0, sticky="ns", pady=5) self.voltScale2 = tk.Scale(voltage_box, bg="white", from_=12, to=4.5, resolution=0.1, troughcolor="gray90", highlightthickness=0, label='H') self.voltScale2.grid(row=1, column=1, sticky="ns", pady=5) self.voltScale2.set(12) temperature_box = tk.Canvas(self, width=int((self.controller.app_width / 6)), height=int( 2 * (self.controller.app_height / 6)), bg="white", bd=2) temperature_box.grid(row=2, column=2, pady=5, sticky="nw") temperature_box.grid_propagate(0) temperature_box.grid_columnconfigure(0, weight=1) temperature_heading = tk.Label( temperature_box, bg="turquoise3", fg="white", font=self.controller.heading_font, text="Temperature (°F)", ) temperature_heading.grid(row=0, column=0, sticky="new", padx=2, pady=2) self.temp_scale = tk.Scale(temperature_box, bg="white", orient="horizontal", from_=50, to=100, troughcolor="white", highlightthickness=0) self.temp_scale.grid(row=1, column=0, sticky="nsew", padx=5, pady=20) self.temp_scale.set(85) read_button = tk.Button(self, text="Read", bg="gray90", command=self.readParameters) read_button.grid(row=3, column=0, pady=10) write_button = tk.Button(self, text="Write", bg="gray90", command=self.writeParameters) write_button.grid(row=3, column=1, pady=10) default_button = tk.Button(self, text="Default", bg="gray90", command=self.defaultWrite) default_button.grid(row=3, column=2, pady=10)
width=20, height=10, font=("Helvetica", 12)) listOfDivisions.insert(0, "O_OTHER") listOfDivisions.insert(1, "AA - Academic Affairs") listOfDivisions.insert(2, "BFA - Business and Financial Affairs") listOfDivisions.insert(3, "OOP - Office of the President") listOfDivisions.insert(4, "SA - Student Affairs") listOfDivisions.insert(5, "TI - Technology and Innovation") listOfDivisions.insert(6, "UA - University Advancement") listOfDivisions.grid(row=6, column=1) scrollbar = tkinter.Scrollbar(mainWindow, orient="vertical") scrollbar.config(command=listOfDivisions.yview) scrollbar.grid(sticky="E") listOfDivisions.config(yscrollcommand=scrollbar.set) isShared = None tkinter.Checkbutton(mainWindow, text="Shared Computer?", variable=isShared).grid(row=7, column=1, sticky="W") if isShared: assignedUser = userName ConfirmButton = tkinter.Button(mainWindow, text="Confirm", command=mainWindow.destroy) ConfirmButton.grid(row=8, column=0) mainWindow.mainloop()
def __init__(self): self.root = tk.Tk() first_frame = ttk.Frame(self.root) first_frame.grid(column=0, row=0) path = tk.Variable(value="") ttk.Entry(first_frame, textvariable=path).grid(column=0, row=0) ttk.Button(first_frame, text="Get Data", command=lambda: self.getData(path)).grid(column=1, row=0) self.input_list = tk.Listbox(first_frame) self.input_list.grid(column=0, row=1, columnspan=2) self.date_var = tk.Variable(value="Select the date column") ttk.Button(first_frame, textvariable=self.date_var, command=self.selectDate).grid(column=0, row=2, columnspan=2) ttk.Label(first_frame, text="Select Variables to Add").grid(column=0, row=3, columnspan=2) self.choices = [ tk.IntVar(value=0), tk.IntVar(value=0), tk.IntVar(value=0), tk.IntVar(value=0), tk.IntVar(value=0), tk.IntVar(value=0), tk.IntVar(value=0) ] names = [ "Minute", "Hour", "Day", "Month", "Year", "Weekend", "Holiday" ] for i, j in enumerate(names): tk.Checkbutton(first_frame, text=j, offvalue=0, onvalue=1, variable=self.choices[i]).grid(column=0, row=i + 4, sticky=tk.W) ttk.Button(first_frame, text="Modify Dataset", command=self.modifyDataset, width=12).grid(column=1, row=4, rowspan=2) ttk.Button(first_frame, text="Show Dataset", width=12, command=self.showDataset).grid(column=1, row=6, rowspan=2) ttk.Button(first_frame, text="Save Dataset", width=12, command=lambda: self.saveFile(path.get())).grid(column=1, row=8, rowspan=2)
message += "power\n" if hobby3.get() == True: message += "people\n" #清除text中所有的内容 text.delete(0.0, tkinter.END) text.insert(tkinter.INSERT, message) #绑定布尔类型的变量 hobby1 = tkinter.BooleanVar() hobby2 = tkinter.BooleanVar() hobby3 = tkinter.BooleanVar() #创建多选框,选中,没有选中 ----》bool check1 = tkinter.Checkbutton(window, text="money", variable=hobby1, command=updata) check1.pack() check2 = tkinter.Checkbutton(window, text="power", variable=hobby2, command=updata) check2.pack() check3 = tkinter.Checkbutton(window, text="people", variable=hobby3, command=updata) check3.pack()
# photo = tkinter.PhotoImage(file="A:/TEST/woveC.gif") # 只接受gif文件 # lable_2 = tkinter.Label(MainForm, image=photo) lable_1.pack(side="left") # lable_2.pack(side="left") "===================================================================================================Entry单行文本" entry = tkinter.Entry(MainForm, width=10) # 单行文本输入 entry.pack(side="right") "===================================================================================================Text多行文本" text = tkinter.Text(MainForm, width=10, height=3) text.pack(side="bottom") "===================================================================================================Checkbutton复选框组件" var = tkinter.StringVar() # 字符串变量子类实例化 checkbutton = tkinter.Checkbutton(MainForm, cnf={ "text": "蓝猫", "variable": var, "onvalue": "RGB", "offvalue": "L", "fg": "blue" }) # 创建带蓝色标题复选框 checkbutton.pack(side="top") "===================================================================================================Radiobutton单选框组件" v = tkinter.IntVar() radiobutton = tkinter.Radiobutton(MainForm, cnf={ "text": "ONE", "variable": v, "value": 1 }) radiobutton.pack(anchor="w") "启动窗体运行" MainForm.mainloop() # mainloop 主循环
L_empty = Tk.Label(master=root, text="") L_empty.grid(row=4) button_get = Tk.Button(master=root, text='Plot!', command=get_values) # plot button button_get.config(font=(None, 15)) button_get.grid(row=5, column=0) button_quit = Tk.Button(root, text="Quit", command=close_all) # quit button button_quit.config(font=(None, 15)) button_quit.grid(row=0, column=5) color_l = Tk.Label(master=root, width=5, height=2, bd=2, text="color", anchor="e") #color label color_l.config(font=(None, 15)) color_l.grid(row=1, column=4) colors_list = ("default", "red", "blue", "green", "yellow", "black", "magenta") color_strvar = Tk.StringVar(root) color_strvar.set(colors_list[0]) colors_om = Tk.OptionMenu(root, color_strvar, *colors_list) #option (list) menu of colors colors_om.config(font=(None, 15)) colors_om.grid(row=1, column=5) grid_strvar = Tk.StringVar(root) grid_strvar.set(1) grid_cb = Tk.Checkbutton(root, text="grid", variable=grid_strvar) grid_cb.config(font=(None, 15)) grid_cb.grid(row=2, column=5) root.mainloop()
# かぶり人数許容上限K=3、同時練習許容上限W=5 label_K = tk.Label(root, text="かぶり人数許容上限K") label_K.place(x=30, y=y3) entry_K = tk.Entry(width=15) entry_K.place(x=30, y=y3 + 20) entry_K.insert(tk.END, k_initial) label_W = tk.Label(root, text="同時練習許容上限W") label_W.place(x=200, y=y3) entry_W = tk.Entry(width=15) entry_W.place(x=200, y=y3 + 20) entry_W.insert(tk.END, w_initial) # Slackチェックボタン bln = tk.BooleanVar() bln.set(False) chk1 = tk.Checkbutton(root, variable=bln, text="Slackへ送信") chk1.place(x=30, y=y5) # 実行ボタン calc_button = tk.Button( root, text="実行", command=lambda: Clac_Menu(Attend_path.get(), Attend_sheet.get( ), entry_K.get(), entry_W.get(), entry_bikou.get(), bln.get())) calc_button.place(x=150, y=y5) # # リセットボタン2つ # reset_button =tk.Button(root,text="リセット",command=lambda:ClearPart()) # reset_button.place(x=250,y=y5) # def ClearPart(): # bln.set(False)
def draw_filters(self): # self.active_filters = dict({'area': False, 'hour': False, 'date': False, 'block': False}) self.active_filters = { "area": tk.IntVar(), "hour": tk.IntVar(), "date": tk.IntVar(), "block": tk.IntVar() } self.label_filters = tk.Label(self.master_panel, text="Filters:", bg='white', font=("Arial", 14)).grid(row=1, column=4, columnspan=2, sticky=tk.W) # area filter ====================================== self.area_checkbox = tk.Checkbutton( self.master_panel, text="Filter by Area", variable=self.active_filters['area'], bg='white', font=("Arial", 11)) self.area_checkbox.grid(row=2, column=4, sticky=tk.W) tk.Label(self.master_panel, text="Insert x1,x2,x3,x4 :", bg='white', font=("Arial", 9)).grid(sticky=tk.W, row=3, column=4) self.area_filter = tk.Entry(self.master_panel, width=25, bg='white') self.area_filter.grid(row=3, column=5) # hour filter ====================================== self.hour_checkbox = tk.Checkbutton( self.master_panel, text="Filter by Time", variable=self.active_filters['hour'], bg='white', font=("Arial", 11)) self.hour_checkbox.grid(row=4, column=4, sticky=tk.W) tk.Label(self.master_panel, text="Insert 00:00:00,:", bg='white', font=("Arial", 9)).grid(sticky=tk.W, row=5, column=4) self.hour_filter = tk.Entry(self.master_panel, width=25, bg='white') self.hour_filter.grid(row=5, column=5) # date filter ====================================== self.date_checkbox = tk.Checkbutton( self.master_panel, text="Filter by Date", variable=self.active_filters['date'], bg='white', font=("Arial", 11)) self.date_checkbox.grid(row=6, column=4, sticky=tk.W) tk.Label(self.master_panel, text="Insert 1970-01-01,time :", bg='white', font=("Arial", 9)).grid(sticky=tk.W, row=7, column=4) self.date_filter = tk.Entry(self.master_panel, width=25, bg='white') self.date_filter.grid(row=7, column=5) self.block_checkbox = tk.Checkbutton( self.master_panel, text="Filter by Block", variable=self.active_filters['block'], bg='white', font=("Arial", 11)) self.block_checkbox.grid(row=8, column=4, sticky=tk.W) tk.Label(self.master_panel, text="Insert 1,2,5,6,89 :", bg='white', font=("Arial", 9)).grid(sticky=tk.W, row=9, column=4) self.block_filter = tk.Entry(self.master_panel, width=25, bg='white') self.block_filter.grid(row=9, column=5) self.filters_button = tk.Button(self.master_panel, text="Load Routes", command=self.funcs['load_routes'], height=1, width=30, bg='white', font=("Arial", 11)) self.filters_button.grid(row=10, column=4, columnspan=2) self.grid_button = tk.Button(self.master_panel, text="Show Grid", command=self.funcs['show_grid'], height=1, width=30, bg='white', font=("Arial", 11)) self.grid_button.grid(row=11, column=4, columnspan=2)
doPage = ttk.Frame(nb) nb.add(doPage, text='Digital Output') # Creating variable for checkbox cb1 = tk.IntVar() cb2 = tk.IntVar() cb3 = tk.IntVar() cb4 = tk.IntVar() cb5 = tk.IntVar() cb6 = tk.IntVar() cb7 = tk.IntVar() cb8 = tk.IntVar() # DO1 Start tk.Checkbutton(doPage, text="DO 1", variable=cb1).grid(column=0, row=1, padx=10, pady=10) do1 = Button(doPage, text="OFF", width=12) do1.grid(row=1, column=1) tk.Label(doPage, text="Set Time").grid(row=1, column=2) e1 = tk.Entry(doPage) e1.insert(0, str('00:00:00')) e1.grid(row=1, column=3) Btn1 = tk.Button(doPage, text="Start") Btn1.grid(row=1, column=4) tk.Label(doPage, text="remaining").grid(row=1, column=5) e12 = tk.Entry(doPage) e12.grid(row=1, column=6)
scrolH = 3 scr = scrolledtext.ScrolledText(enterbox, width=scrolW, height=scrolH, wrap=tk.WORD) scr.grid(column=0, sticky='WE', columnspan=3) #Adding label frames checkbox = ttk.LabelFrame(tab2, text='Check Box') checkbox.grid(column=0, row=0, padx=8, pady=4) #Adding checkbutton chVarDis = tk.IntVar() check1 = tk.Checkbutton(checkbox, text="Disabled", variable=chVarDis, state='disabled') check1.select() check1.grid(column=0, row=4, sticky=tk.W) chVarUn = tk.IntVar() check2 = tk.Checkbutton(checkbox, text="UnChecked", variable=chVarUn) check2.deselect() check2.grid(column=1, row=4, sticky=tk.W) chVarEn = tk.IntVar() check3 = tk.Checkbutton(checkbox, text="Enabled", variable=chVarEn) check3.select() check3.grid(column=2, row=4, sticky=tk.W) #Radiobutton Definition
def open_edit_people_window(self): """ Create a new window for editing people """ # Create a new windows and set size and title edit_people_window = tk.Toplevel(root) edit_people_window.title("משבץ צוות אוטומטי") edit_people_window.geometry("400x300") # Divide the windows into 7x7 frames for i in range(7): edit_people_window.columnconfigure(i, weight=1, minsize=20) edit_people_window.rowconfigure(i, weight=1, minsize=20) for j in range(7): frame = tk.Frame( master=edit_people_window, relief=tk.RAISED, borderwidth=0, ) frame.grid(row=i, column=j, sticky="nsew") # Add a person title new_person_headline = tk.Label(master=edit_people_window, text="אדם חדש") new_person_headline.grid(row=0, column=5, sticky="nsew") new_person_headline.config(font=("David", 12)) # Delete a person title delete_person_headline = tk.Label(master=edit_people_window, text="מחק אדם") delete_person_headline.grid(row=0, column=1, sticky="nsew") delete_person_headline.config(font=("David", 12)) # Get the name of the new person name = tk.Entry(edit_people_window) name.grid(row=1, column=5) # Get person rolls from checkboxes manager_var = tk.IntVar() makel_officer_var = tk.IntVar() makel_operator_var = tk.IntVar() samba_var = tk.IntVar() toran_var = tk.IntVar() driver_var = tk.IntVar() manager = tk.Checkbutton(edit_people_window, text="מנהל", variable=manager_var).grid(row=2, column=5, sticky="e") makel_officer = tk.Checkbutton(edit_people_window, text="קצין הפעלה", variable=makel_officer_var) \ .grid(row=3, column=5, sticky="e") makel_operator = tk.Checkbutton(edit_people_window, text="מפעיל", variable=makel_operator_var) \ .grid(row=4, column=5, sticky="e") samba = tk.Checkbutton(edit_people_window, text="סמבצ", variable=samba_var).grid(row=2, column=4, sticky="e") toran = tk.Checkbutton(edit_people_window, text="תורן יחידתי", variable=toran_var) \ .grid(row=3, column=4, sticky="e") driver = tk.Checkbutton(edit_people_window, text="נהג", variable=driver_var).grid(row=4, column=4, sticky="e") # list of people list_of_people = em.get_list_of_all_people() list_if_empty = ['The file is empty'] chosen_option = tk.StringVar(edit_people_window) try: chosen_option.set(list_of_people[0]) # default value dropped_down_menu = tk.OptionMenu(edit_people_window, chosen_option, *list_of_people) except: chosen_option.set(list_if_empty[0]) # If the file is empty dropped_down_menu = tk.OptionMenu(edit_people_window, chosen_option, *list_if_empty) dropped_down_menu.grid(row=1, column=1) # Add a warning alert warning_label = tk.Label(edit_people_window, text='') warning_label.grid(row=2, column=1) # Add person button add_person = tk.Button( edit_people_window, text="הוסף בן אדם", bg="#ff677d", command=lambda: em.add_new_person( name.get(), manager_var, makel_officer_var, makel_operator_var, samba_var, toran_var, driver_var, warning_label)) add_person.grid(row=5, column=5, sticky="nsew") # Delete person button delete_person = tk.Button( edit_people_window, text="מחק בן אדם", bg="#ff677d", command=lambda: em.delete_person(chosen_option.get( ), warning_label, chosen_option, edit_people_window, list_if_empty )) delete_person.grid(row=5, column=1, sticky="nsew")
def create_controls(self, master): """Make a Frame to hold the controls in a vertical column at right.""" ctrl_col = tk.Frame(master) ctrl_col.grid(row=1, column=1, sticky=tk.NW) row=0 self.btn_running = tk.Button(ctrl_col) self.btn_running["text"] = App.running_text[self.running] self.btn_running["command"] = self.on_run self.btn_running.grid(row=row, sticky=tk.NW, padx=PADX, pady=PADY, ipadx=10) self.btn_screenshot = tk.Button(ctrl_col) self.btn_screenshot["text"] = 'PrtScr' self.btn_screenshot["command"] = self.on_screenshot self.btn_screenshot.grid(row=row, sticky=tk.E, padx=PADX, pady=PADY, ipadx=10) row += 1 self.sub_frame = tk.Frame(ctrl_col, bd=1, relief=tk.SUNKEN) self.sub_frame.grid(row=row, sticky=tk.NW, padx=PADX, pady=PADY) for n in range(2): self.sub_frame.columnconfigure(n, minsize=MinSize) """Create scaling controls in the supplied frame.""" # add labels to describe the sliders c = tk.Label(self.sub_frame, text="HMC5983 controls:") c.grid(row=row, sticky=tk.EW, columnspan=2) row += 1 self.use_81Gs = self.cfg._81Gs self._81Gs = tk.IntVar() self._81Gs.set(self.use_81Gs) #c_81Gs = tk.Checkbutton(ctrl_col, text="8.1 Gs", variable=self._81Gs, c_81Gs = tk.Checkbutton(self.sub_frame, text="8.1 Gs", variable=self._81Gs, command=self.on_81Gs) c_81Gs.grid(row=row, column=0, sticky=tk.NW, padx=PADX) if self.use_81Gs : self.parent_conn.send(['on_81Gs',self.cfg.calc_81Gs]) row += 1 self.use_088Gs = self.cfg._088Gs self._088Gs = tk.IntVar() self._088Gs.set(self.use_088Gs) #c_088Gs = tk.Checkbutton(ctrl_col, text="0.88 Gs", variable=self._088Gs, c_088Gs = tk.Checkbutton(self.sub_frame, text="0.88 Gs", variable=self._088Gs, command=self.on_088Gs) c_088Gs.grid(row=row, column = 0, sticky=tk.NW, padx=PADX) if self.use_088Gs : self.parent_conn.send(['on_088Gs',self.cfg.calc_088Gs]) row += 1 #====================================================================== # construct a sub-frame to hold scaling controls self.sub_frame = tk.Frame(ctrl_col, bd=1, relief=tk.SUNKEN) self.sub_frame.grid(row=row, sticky=tk.NW, padx=PADX, pady=PADY) for n in range(2): self.sub_frame.columnconfigure(n, minsize=MinSize) row += 1 # add frequency controls to frame, then remove them self.create_freq(self.sub_frame) for slave in self.freq_ctls: slave.grid_remove() # add scaling controls to frame self.create_scaling(self.sub_frame) #====================================================================== self.smoothing = Slider(ctrl_col, from_=SMOOTHING_MIN, to=SMOOTHING_MAX, length=MinSize*2, orient=tk.HORIZONTAL, label='Smoothing', state= 'normal', activebackground="#00ff00", command=self.on_smoothing) self.smoothing.grid(row=row, column=0) self.smoothing.set(self.cfg.smoothing) if (self.cfg.plot_type == 2) : self.smoothing.grid_remove() row += 1 self.plot_type = tk.IntVar() self.plot_type.set(self.cfg.plot_type) self.x_scale = tk.Scale(ctrl_col, length=MinSize*2, orient=tk.HORIZONTAL, command=self.on_plot_size) self.x_scale.grid(row=row, column=0) row += 1 # add radio buttons to choose the x-axis meaning for mode, text, tip in App.plot_types: c = tk.Radiobutton(ctrl_col, text=text, variable=self.plot_type, value=mode, command=self.on_plot_type) check_state(c) c.grid(row=row, sticky=tk.NW, padx=PADX, pady=0, columnspan=2) row += 1
import tkinter as tk root = tk.Tk() #lable label1 = tk.Label(root, text="用户名:") label1.grid(row=0, column=0) label2 = tk.Label(root, text="密 码:") label2.grid(row=1, column=0) #输入框 entry1 = tk.Entry(root) entry1.grid(row=0, column=1) entry2 = tk.Entry(root) entry2.grid(row=1, column=1) #复选框 checkbutton = tk.Checkbutton(root, text="记住密码") checkbutton.grid(row=2, column=0, rowspan=1, columnspan=2, sticky=tk.W) #sticky设置控件的对其方位,这里设置为靠西(左西右东) # # img = tk.PhotoImage(file = "/image/image_test.png") # imageview = tk.Label(root, image= img) # imageview.grid(row = 0, column = 2, rowspan = 2, columnspan = 2) # button1 = tk.Button(root, text="登 录") button1.grid(row=2, column=2) button1 = tk.Button(root, text="退 出") button1.grid(row=2, column=3) root.mainloop()
def load_item_frame(self, parent): if self.item_frame: self.item_frame.destroy() self.index = self.item_scrollbar.listbox.curselection()[0] self.entry = self.item_scrollbar.indexmap[self.index] self.item_main_frame = tk.Frame(parent) self.item_main_frame.grid(row=0, column=1, sticky='WN', rowspan=10) seframe = tk.Frame(self.item_main_frame) cb = tk.Checkbutton(seframe, text="Safe Edit Mode", variable=self.safemode, onvalue=1, offvalue=0, command=self.safemode_toggle) cb.grid(column=0, row=0, sticky='W') tl = tk.Label(seframe, text=' (Try to show only affixes that make sense)') tl.grid(column=1, row=0, sticky='W') seframe.grid(column=0, row=0, columnspan=2, sticky='WN') self.item_frame = tk.Frame(self.item_main_frame) self.item_frame.grid(row=1, column=0, sticky='WN') # INSIDE ABOVE FRAME if self.entry == 'No Item': addid = tk.StringVar(value='0') affixnum = tk.StringVar(value='0') lab = ttk.Label(self.item_frame, text="Add item with ID:") lab.grid(column=0, row=6) ent = ttk.Entry(self.item_frame, textvariable=addid) ent.grid(column=1, row=6) lab = ttk.Label(self.item_frame, text="Number of Affixes:") lab.grid(column=0, row=7) ent2 = ttk.Entry(self.item_frame, textvariable=affixnum) ent2.grid(column=1, row=7) sb = ttk.Button( self.item_frame, text="Add Item", command=lambda: self.additem(addid.get(), affixnum.get())) sb.grid(column=0, row=8) return row = 0 v = tk.StringVar() v.set(self.entry['name']) l = int(len(self.entry['name']) * 0.9) e = tk.Entry(self.item_frame, readonlybackground='white', fg='black', textvariable=v, bd=0, width=l, state='readonly', highlightthickness=0) e.grid(row=row, sticky='W', columnspan=2) if self.safemode.get() == 1: try: self.valid_values = [ db.get_affix_from_id(x)[0][3] for x in self.entry['legal_affixes'] ] except KeyError: self.valid_values = [x[3] for x in db.get_affix_all()] else: self.valid_values = [x[3] for x in db.get_affix_all()] category = self.entry['category'] quality = self.entry['item'].generator.item_quality_level row = row + 1 ttk.Label(self.item_frame, text=self.entry['slot']).grid(column=0, row=row, sticky='W') if (category == 'Gems') and (quality == 9): row = row + 1 ttk.Label(self.item_frame, text="Legendary Gem Level: ").grid(column=0, row=row) ttk.Entry(self.item_frame, textvariable=self.entry['jewel_rank']).grid(column=1, row=row) elif self.entry['stackable']: row = row + 1 ttk.Label(self.item_frame, text="Stack Size: ").grid(column=0, row=row) ttk.Entry(self.item_frame, textvariable=self.entry['stack_size']).grid(column=1, row=row) try: enchanted = self.entry['enchanted'] except KeyError: enchanted = False crow = row for affix, description in self.entry['affixes']: crow = crow + 1 if enchanted: # noinspection PyUnresolvedReferences if affix == enchanted[0][0]: ttk.Label(self.item_frame, text="Enchanted").grid(column=1, row=crow, sticky='NES') description = enchanted[1] cbl = len(description.get()) cb = ttk.Combobox(self.item_frame, textvariable=description, width=150, values=self.valid_values, state='readonly') cb.grid(row=crow, sticky='W') cb.bind("<<ComboboxSelected>>", lambda x: self.set_item_affixes(x, row)) sb = ttk.Button(self.item_frame, text="Save Item", command=self.saveitem) sb.grid(column=0, row=98) delb = ttk.Button(self.item_frame, text="Delete Item", command=self.deleteitem) delb.grid(column=0, row=99)
def clickedJ(): c1 = StringVar() c2 = StringVar() c3 = StringVar() c4 = StringVar() c5 = StringVar() c6 = StringVar() c7 = StringVar() c8 = StringVar() rad = StringVar() rinfo = StringVar() def clickedB(): window.destroy() window = Toplevel(project) window.title("STUDENT REGISTARTION FORM") window.geometry('1550x1000') window.configure(background="light gray") lbl = tk.Label(window, text="STUDENT REGISTRATION FORM", bg='light gray', width=30, font=("Helvetica", 25, "bold")) lbl.place(x=400, y=20) lb1 = tk.Label(window, text="ID", bg='light gray', width=10, font=("bold", 15)) lb1.place(x=50, y=100) txt1 = Entry(window, width=30) txt1.place(x=240, y=100) lb2 = tk.Label(window, text="NAME", bg='light gray', width=10, font=("bold", 15)) lb2.place(x=50, y=140) txt2 = Entry(window, width=30) txt2.place(x=240, y=140) lb3 = tk.Label(window, text="ADDRESS", bg='light gray', width=10, font=("bold", 15)) lb3.place(x=50, y=180) txt3 = Entry(window, width=50) txt3.place(x=240, y=180) lb4 = tk.Label(window, text="CONTACT", bg='light gray', width=10, font=("bold", 15)) lb4.place(x=50, y=220) txt4 = Entry(window, width=30) txt4.place(x=240, y=220) lb5 = tk.Label(window, text="EMAIL", bg='light gray', width=10, font=("bold", 15)) lb5.place(x=50, y=260) txt5 = Entry(window, width=30) txt5.place(x=240, y=260) lb6 = tk.Label(window, text="DOB", bg='light gray', width=10, font=("bold", 15)) lb6.place(x=50, y=300) txt6 = Entry(window, width=30) txt6.place(x=240, y=300) # Check Boxes lb7 = tk.Label(window, text="EDUCATIONAL\nQUALIFICATION", bg='light gray', width=14, font=("bold", 15)) lb7.place(x=50, y=340) check1 = tk.Checkbutton(window, text="HSC/PUC", variable=c1, onvalue="HSC/PUC", offvalue='', bg='light gray') check1.place(x=250, y=340) check2 = tk.Checkbutton(window, text="UNDERGRADUATE", variable=c2, onvalue="Undergraduate", offvalue='', bg='light gray') check2.place(x=350, y=340) check3 = tk.Checkbutton(window, text="DIPLOMA", variable=c3, onvalue="Diploma", offvalue='', bg='light gray') check3.place(x=490, y=340) check4 = tk.Checkbutton(window, text="BCA", variable=c4, onvalue="BCA", offvalue='', bg='light gray') check4.place(x=590, y=340) check5 = tk.Checkbutton(window, text="MCA", variable=c5, onvalue="MCA", offvalue='', bg='light gray') check5.place(x=670, y=340) check6 = tk.Checkbutton(window, text="B.E/B.TECH", variable=c6, onvalue="B.E / B.Tech", offvalue='', bg='light gray') check6.place(x=750, y=340) check7 = tk.Checkbutton(window, text="M.E/M.TECH", variable=c7, onvalue="M.E / M.Tech", offvalue='', bg='light gray') check7.place(x=870, y=340) check8 = tk.Checkbutton(window, text="BSC", variable=c8, onvalue="BSC", offvalue='', bg='light gray') check8.place(x=1010, y=340) lb7 = tk.Label(window, text="Others Specify", bg='light gray') lb7.place(x=1090, y=340) txt7 = Entry(window, width=20) txt7.place(x=1175, y=340) lb8 = tk.Label(window, text="SCHOOL/COLL/\nINSTITUTE", bg='light gray', width=14, font=("bold", 15)) lb8.place(x=50, y=400) txt8 = Entry(window, width=40) txt8.place(x=240, y=400) lb9 = tk.Label(window, text="BRANCH", bg='light gray', width=10, font=("bold", 15)) lb9.place(x=50, y=460) txt9 = Entry(window, width=30) txt9.place(x=240, y=460) # Radio Buttons lb10 = tk.Label(window, text="PROFESSIONAL\nDETAILS", bg='light gray', width=14, font=("bold", 15)) lb10.place(x=50, y=510) radio1 = tk.Radiobutton(window, text="STUDENT", bg='light gray', variable=rad, value="Student") radio1.place(x=250, y=510) radio2 = tk.Radiobutton(window, text="EMPLOYED", bg='light gray', variable=rad, value="Employed") radio2.place(x=350, y=510) radio3 = tk.Radiobutton(window, text="UN-EMPLOYED", bg='light gray', variable=rad, value="Un-Employed") radio3.place(x=450, y=510) radio4 = tk.Radiobutton(window, text="SELF-EMPLOYED", bg='light gray', variable=rad, value="Self-Employed") radio4.place(x=580, y=510) radio5 = tk.Radiobutton(window, text="Any Other Business", bg='light gray', variable=rad, value="Any") radio5.place(x=730, y=510) txt10 = Entry(window, width=20) txt10.place(x=860, y=510) lb11 = tk.Label(window, text="ARE YOU INTRESTED IN RECEIVING INFORMATION ABOUT IN HOUSE SEMINARS/ WORKSHOPS?",\ width=82, bg='light gray', font=("bold", 14)) lb11.place(x=50, y=570) radio5 = tk.Radiobutton(window, text="YES", bg='light gray', variable=rinfo, value="Yes") radio5.place(x=980, y=570) radio6 = tk.Radiobutton(window, text="NO", bg='light gray', variable=rinfo, value="No") radio6.place(x=1040, y=570) lb12 = tk.Label(window, text="SIGNATURE\nOF THE\nCANDIDATE", bg='light gray', width=12, font=("bold", 15)) lb12.place(x=50, y=610) txt11 = Entry(window, width=30) txt11.place(x=240, y=635) # Insert into Database def clicked(): chec = [] A = txt1.get() if A == '': messagebox.showerror("Error", "ID cannot be Empty") elif A.isdigit() == False: messagebox.showerror("Error", "ID must be a Number") A = int(A) B = txt2.get() B = str(B) C = txt3.get() C = str(C) D = txt4.get() D = str(D) E = txt5.get() E = str(E) F = txt6.get() F = str(F) c9 = txt7.get() c9 = str(c9) # Add the Checkboxes for Database c = [ c1.get(), c2.get(), c3.get(), c4.get(), c5.get(), c6.get(), c7.get(), c8.get(), c9 ] for item in c: if item != '': chec.append(item) G = " ".join(chec) H = txt8.get() H = str(H) I = txt9.get() I = str(I) # Add Radio into Database if rad.get() == "Any": J = str(txt10.get()) else: J = rad.get() K = rinfo.get() L = txt11.get() L = str(L) if B == '': messagebox.showerror("Error", "Name cannot be empty") elif L == '': messagebox.showerror("Error", "Signature is a must") elif D == '' and E == '': messagebox.showerror("Error", "Need atleast 1 contact info") else: insert = "INSERT INTO student(ID, NAME, ADDRESS, CONTACT, EMAIL, DOB, QUALIFICATION, COLLEGE, BRANCH, PROFESSION,\ INFO, SIGNATURE) VALUES('%d','%s','%s','%s','%s','%s','%s','%s','%s', '%s', '%s', '%s')"\ % (A, B, C, D, E, F, G, H, I, J, K, L) cursor.execute(insert) connection.commit() messagebox.showinfo("Notification", "Saved Successfully") btnS = tk.Button(window, text="SAVE", font=("Helvetica", 10, "bold"), borderwidth=2, relief='raised', activebackground='azure4', command=clicked) btnS.place(x=530, y=750) btnB = tk.Button(window, text="BACK", font=("Helvetica", 10, "bold"), borderwidth=2, relief='raised', activebackground='azure4', command=clickedB) btnB.place(x=770, y=750)
def __init__(self): self.root = tkinter.Tk() self.root.title("FileManager") self.root.resizable(width=False, height=False) self.root.geometry('450x300') self.hidden_dir = tkinter.IntVar() self.buff = None self.all_program = os.listdir('/usr/bin') self.root.bind('<Button-1>', self.root_click) self.root.bind('<FocusOut>', self.root_click) #top frame self.title_frame = tkinter.Frame(self.root) self.title_frame.pack(fill='both', expand=True) #back button self.back_button = tkinter.Button(self.title_frame, text="..", command=self.parent_dir, width=1, height=1) self.back_button.pack(side='left') #path entry self.path_text = tkinter.StringVar() self.path_text.set('/') self.current_path = tkinter.Entry(self.title_frame, textvariable=self.path_text, width=40, state='readonly') self.current_path.pack(side='left') #button show/hidde hidden dir/file self.check_button = tkinter.Checkbutton(self.title_frame, text="Hidden", font=("Helvetica", 10), padx=1, pady=1, variable=self.hidden_dir, command=self.refresh_window) self.check_button.pack(side='left') #main frame self.main_frame = tkinter.Frame(self.root) self.main_frame.pack() # scroll bar self.scrollbar_vert = tkinter.Scrollbar(self.main_frame, orient="vertical") self.scrollbar_vert.pack(side='right', fill='y') self.scrollbar_hor = tkinter.Scrollbar(self.main_frame, orient="horizontal") self.scrollbar_hor.pack(side='bottom', fill='x') #canvas self.canvas = tkinter.Canvas(self.main_frame, borderwidth=0, bg='white') self.inner_frame = tkinter.Frame(self.canvas, bg='white') #команды для прокрутки self.scrollbar_vert["command"] = self.canvas.yview self.scrollbar_hor["command"] = self.canvas.xview #настройки для canvas self.canvas.configure(yscrollcommand=self.scrollbar_vert.set, xscrollcommand=self.scrollbar_hor.set, width=400, heigh=250) self.canvas.pack(side='left', fill='both', expand=True) self.canvas.create_window((0, 0), window=self.inner_frame, anchor="nw") #отрисовываем содержимое лиректории self.dir_content()
def __init__(self, parent, controller): tk.Frame.__init__(self, parent, padx=5, pady=5) self.controller_ref = controller # expose parent for clear and plot buttons. self.grid_rowconfigure(0, weight=1) self.grid_rowconfigure(1, weight=1) self.grid_columnconfigure(0, weight=1) self.grid_columnconfigure(1, weight=100) self.grid_columnconfigure(2, weight=100) self.grid_columnconfigure(3, weight=25) self.grid_columnconfigure(4, weight=50) # vars self.label_width = 10 self.label_height = 10 self.plot_mean_sweeps_option = tk.BooleanVar() self.plot_mean_sweeps_option.set(False) self.top_plot_canvas = tk.Canvas(self, bg="white", width=self.label_width, height=self.label_height) self.top_plot_canvas.create_text(8, 25, angle=90, anchor="e", text="top", font=controller.medium_font) self.bottom_plot_canvas = tk.Canvas(self, bg="white", width=self.label_width, height=self.label_height) self.bottom_plot_canvas.create_text(8, 12, angle=90, anchor="e", text="bottom", font=controller.medium_font) self.plot_options_frame = tk.Frame(self, bg="white") self.plot_options_frame.reset_axis_button = tk.Button( self.plot_options_frame, text="reset axes", font=controller.large_font, width=20, height=2, command=controller.plot_frame.reset_axis, ) self.plot_options_frame_mean_checkbox = tk.Checkbutton( self.plot_options_frame, text="Plot mean of sweeps?", width=20, var=self.plot_mean_sweeps_option, onvalue=True, offvalue=False, font=controller.large_font, command=self._toggle_mean, anchor="center", ) self.plot_options_frame_clear_plot_button = tk.Button( self.plot_options_frame, text="Clear plot\n('c')", width=20, command=self.clear_plot, anchor="center", font=controller.large_font, ) self.plot_options_frame_update_plot_button = tk.Button( self.plot_options_frame, text="Update plot\n('tab')", width=20, height=4, command=self.update_plot, anchor="center", font=controller.large_font, ) self.top_plot_listbox = tk.Listbox(self, width=5, height=3, font=controller.small_font, exportselection=False) self.bottom_plot_listbox = tk.Listbox(self, width=5, height=3, font=controller.small_font, exportselection=False) self.sweep_listbox = tk.Listbox(self, width=5, height=6, font=controller.large_font, exportselection=False) self.trace_vars_frame = tk.Frame(self, bg="white") self.trace_vars_frame_protocol_label = tk.Label( self.trace_vars_frame, text="Protocol: ", width=20, height=1, font=controller.large_font, anchor="e", ) self.trace_vars_frame_protocol_text = tk.Label( self.trace_vars_frame, text="None selected", width=20, height=1, font=controller.large_font, anchor="w", ) self.trace_vars_frame_file_label = tk.Label( self.trace_vars_frame, text="File: ", width=20, height=1, font=controller.large_font, anchor="e", ) self.trace_vars_frame_file_text = tk.Label( self.trace_vars_frame, text="None selected", width=20, height=1, font=controller.large_font, anchor="w", ) self.trace_vars_frame_sampling_rate_label = tk.Label( self.trace_vars_frame, text="Sampling rate (kHz): ", width=20, height=1, font=controller.large_font, anchor="e", ) self.trace_vars_frame_sampling_rate_text = tk.Label( self.trace_vars_frame, text="None selected", width=20, height=1, font=controller.large_font, anchor="w", ) # trace_vars_canvas setup self.trace_vars_frame.grid_columnconfigure(0, weight=1) self.trace_vars_frame.grid_rowconfigure(0, weight=1) self.trace_vars_frame.grid_columnconfigure(1, weight=1) self.trace_vars_frame.grid_rowconfigure(1, weight=1) self.trace_vars_frame.grid_rowconfigure(2, weight=1) self.trace_vars_frame.grid_rowconfigure(3, weight=1) self.plot_options_frame.grid_rowconfigure(0, weight=1) self.plot_options_frame.grid_rowconfigure(1, weight=1) self.plot_options_frame.grid_rowconfigure(1, weight=2) self.plot_options_frame.grid_columnconfigure(0, weight=1) # layout self.top_plot_canvas.grid(row=0, column=0, sticky="nsew") self.bottom_plot_canvas.grid(row=1, column=0, sticky="nsew") self.top_plot_listbox.grid(row=0, column=1, sticky="nsew") self.bottom_plot_listbox.grid(row=1, column=1, sticky="nsew") self.sweep_listbox.grid(column=2, row=0, rowspan=2, sticky="nsew") self.plot_options_frame.grid(column=3, row=0, rowspan=2, sticky="nsew") self.trace_vars_frame.grid(column=4, rowspan=2, row=0, sticky="nsew") self.trace_vars_frame_file_label.grid(column=0, row=0, sticky="w") self.trace_vars_frame_file_text.grid(column=1, row=0, sticky="ew") self.trace_vars_frame_protocol_label.grid(column=0, row=1, sticky="w") self.trace_vars_frame_protocol_text.grid(column=1, row=1, sticky="ew") self.trace_vars_frame_sampling_rate_label.grid(column=0, row=2, sticky="w") self.trace_vars_frame_sampling_rate_text.grid(column=1, row=2, sticky="ew") self.plot_options_frame_mean_checkbox.grid(column=0, row=0, sticky="nsew") self.plot_options_frame.reset_axis_button.grid(column=0, row=1, sticky="nsew") self.plot_options_frame_clear_plot_button.grid(column=0, row=2, sticky="nsew") self.plot_options_frame_update_plot_button.grid(column=0, row=3, sticky="nsew")
def widgets(self): check = tkinter.Checkbutton(root, text="Case déjà cochée !") check.select() check.pack()
def __init__(self): tk.Tk.__init__(self) self.resizable(False, False) self.font_label = ("Helvetica", 12, "bold") self.font_entry = ("Helvetica", 12) self.title("Search FFXIV Logs") self.is_case_sensitive = tk.IntVar() self.bg_color = '#36393F' self.fg_color = '#FFFFFF' widgets = [] self.l1 = tk.Label(self, text="Directory name:", font=self.font_label) self.l1.grid(row=0, sticky='E') widgets.append(self.l1) self.l2 = tk.Label(self, text="Search term:", font=self.font_label) self.l2.grid(row=1, sticky='E') widgets.append(self.l2) self.l3 = tk.Label(self, text="Output file:", font=self.font_label) self.l3.grid(row=3, sticky='E') widgets.append(self.l3) self.default_e1 = tk.StringVar(self, value="log") self.default_e2 = tk.StringVar(self, value="Annie Keito") self.default_e3 = tk.StringVar(self, value="output.txt") self.e1 = tk.Entry(self, font=self.font_entry, textvariable=self.default_e1) self.e1.grid(row=0, column=1) widgets.append(self.e1) self.e2 = tk.Entry(self, font=self.font_entry, textvariable=self.default_e2) self.e2.grid(row=1, column=1) widgets.append(self.e2) self.case_check = tk.Checkbutton(self, font=self.font_entry, text="Case Sensitive", variable=self.is_case_sensitive, selectcolor="black") self.case_check.select() # checked by default self.case_check.grid(row=2, column=1, sticky='W') widgets.append(self.case_check) self.e3 = tk.Entry(self, font=self.font_entry, textvariable=self.default_e3) self.e3.grid(row=3, column=1) widgets.append(self.e3) self.button = tk.Button(self, text="SEARCH", font=self.font_label, command=self.search) self.button.grid(row=4, columnspan=2, pady=5) widgets.append(self.button) self.status = tk.Text(self, font=self.font_entry, state='disabled', width=35, height=10, wrap=tk.WORD) self.status.grid(row=5, columnspan=2) widgets.append(self.status) self.credits = tk.Label(self, text="<< Created by Annie Keito @ Mateus >>", font=self.font_label) self.credits.grid(row=6, columnspan=2) widgets.append(self.credits) # Apply dark mode self.configure(bg=self.bg_color) self.case_check.configure( activebackground=self.bg_color) # stay dark while pressed self.button.configure( activebackground=self.bg_color) # stay dark while pressed for widget in widgets: widget.configure(bg=self.bg_color) widget.configure(fg=self.fg_color) self.emptyConsole = True self.print_to_console("Press SEARCH to begin ...")
def win_creat(self) -> None: """ Creation de l interface graphique """ global var_G, var_J, var_Q, var_S, var_radio global spinbox_width, spinbox_heigh, spinbox_cloud global width_text, heigh_text, point_text # Variables de controle var_G = tk.BooleanVar() var_J = tk.BooleanVar() var_Q = tk.BooleanVar() var_S = tk.BooleanVar() var_radio = tk.StringVar() width_text = tk.IntVar() heigh_text = tk.IntVar() point_text = tk.IntVar() # Canvas principal avec le nuage de points self.can = tk.Canvas( self, width=self.can_dim[0], heigh=self.can_dim[1], bg="white") self.can.grid(column=2, row=0, rowspan=4) # Frame principale frm = tk.Frame(self, heigh=self.can_dim[1], width=WIDTH_FRAME_DEFAULT) frm.grid_propagate(False) frm.grid(column=0, row=2, sticky="n", columnspan=2, rowspan=2) # LabelFrame secondaire se trouvant dans le Label principal, # affiche les animations label_anim = tk.LabelFrame( frm, text="Animation", height=100, width=WIDTH_FRAME_DEFAULT) label_anim.grid_propagate(False) label_anim.grid(column=0, row=1, sticky="n") # LabelFrame secondaire se trouvant dans le Label principal, # affiche des informations auteurs info_label = tk.LabelFrame( frm, text="Enveloppes Convexes", width=WIDTH_FRAME_DEFAULT, heigh=100, relief="ridge") info_label.grid_propagate(False) info_label.grid(column=0, row=0, columnspan=2) tk.Label(info_label, text=INFORMATION, justify="left", wraplength=WIDTH_FRAME_DEFAULT).grid() # LabelFrame principal se trouvant dans le Label princpal, # affiche Temps des programmes self.label_frame = tk.LabelFrame( frm, text="Temps et nombre d'itérations", width=WIDTH_FRAME_DEFAULT, heigh=120) self.label_frame.grid_propagate(False) self.label_frame.grid(column=0, row=2, rowspan=3) self.label_frame.columnconfigure(1, minsize=65) self.label_frame.columnconfigure(2, minsize=50) # Label secondaire se trouvant dans le Label principal, # affichant Nom du fichier self.file_label = tk.Label(frm, text="fichier:") self.file_label.grid(row=5, column=0, pady=5) # Label secondaire se trouvant dans le Label principal, # permet de créer un nuage de points label_cloud = tk.LabelFrame( frm, text="Créer un nuage", width=WIDTH_FRAME_DEFAULT, heigh=75) label_cloud.grid_propagate(False) label_cloud.grid(row=7, column=0) spinbox_width = tk.Spinbox( label_cloud, from_=WIDTH_CAN_MIN, to=WIDTH_CAN_MAX, width=8, textvariable=width_text) spinbox_heigh = tk.Spinbox( label_cloud, from_=HEIGT_CAN_MIN, to=HEIGT_CAN_MAX, width=8, textvariable=heigh_text) spinbox_cloud = tk.Spinbox( label_cloud, from_=POINT_MIN, to=POINT_MAX, width=8, textvariable=point_text) tk.Label(label_cloud, text="Hauteur").grid(row=0, column=0) tk.Label(label_cloud, text="Largeur").grid(row=1, column=0) tk.Label(label_cloud, text="Points").grid(row=0, column=2) spinbox_width.grid(row=0, column=1, padx=5) spinbox_heigh.grid(row=1, column=1, padx=5) spinbox_cloud.grid(row=0, column=3, padx=5) tk.Button(label_cloud, text="Créer", command=self.cloud_creation).grid( row=1, column=2, pady=5, padx=5, columnspan=2) # Creation des boutons se trouvant dans le Label principal self.previous_bouton = tk.Button(frm, text='Nuage précedent', state=tk.DISABLED, command=self.previous_cloud, width=15, repeatdelay=1000, repeatinterval=500) self.previous_bouton.grid(row=6, column=0, sticky="w", pady=5) tk.Button(frm, text='Nuage suivant', command=self.next_cloud, width=15, repeatdelay=1000, repeatinterval=500).grid(row=6, column=0, sticky="e", pady=5) tk.Button(frm, text='Quitter', command=self.destroy, width=10, activebackground="red2").grid(row=8, column=0, sticky="sw", pady=5) # Creation des Checkbuttons se trouvant dans le label_frame principal self.check_select = tk.Checkbutton( self.label_frame, text="Sélectionner tout", command=self.select_all, variable=var_S) self.check_select.grid(row=0, column=0, sticky="w") self.check_Graham = tk.Checkbutton( self.label_frame, text="Graham", command=self.envelope_Graham, variable=var_G) self.check_Graham.grid(row=1, column=0, sticky="w") self.check_Jarvis = tk.Checkbutton( self.label_frame, text="Jarvis", command=self.envelope_Jarvis, variable=var_J) self.check_Jarvis.grid(row=2, column=0, sticky="w") self.check_Quickhull = tk.Checkbutton( self.label_frame, text="Quickhull", command=self.envelope_Quickhull, variable=var_Q) self.check_Quickhull.grid(row=3, column=0, sticky="w") # Creation des Labels se trouvant dans le label_frame principal self.time_Graham = tk.Label(self.label_frame, text="00s") self.time_Graham.grid(row=1, column=1, sticky="w") self.time_Jarvis = tk.Label(self.label_frame, text="00s") self.time_Jarvis.grid(row=2, column=1, sticky="w") self.time_Quickhull = tk.Label(self.label_frame, text="00s") self.time_Quickhull.grid(row=3, column=1, sticky="w") self.iteration_Graham = tk.Label(self.label_frame, text="0") self.iteration_Graham.grid(row=1, column=2, sticky="e") self.iteration_Jarvis = tk.Label(self.label_frame, text="0") self.iteration_Jarvis.grid(row=2, column=2, sticky="e") self.iteration_Quickhull = tk.Label(self.label_frame, text="0") self.iteration_Quickhull.grid(row=3, column=2, sticky="e") # Creation des Radiobuttons se trouvant dans label_anim, # permet de lancer les animations tk.Radiobutton(label_anim, text="Graham", command=self.animation_envelope, variable=var_radio, value="Graham").grid(row=0, column=0, sticky="w") tk.Radiobutton(label_anim, text="Jarvis", command=self.animation_envelope, variable=var_radio, value="Jarvis").grid(row=1, column=0, sticky="w") tk.Radiobutton(label_anim, text="Quickhull", command=self.animation_envelope, variable=var_radio, value="Quickhull").grid(row=2, column=0, sticky="w") # Initialisation des actions souris self.can.bind('<Button-1>', self.add_point) self.can.bind('<Button-3>', self.dell_point)