Ejemplo n.º 1
0
    def createWidgets(self):

        self.panedWindow = ttk.Panedwindow(self, orient="vertical")
        self.panedWindow.grid(row=0, column=0, sticky="nsew")

        self.topPane = ttk.Panedwindow(self.panedWindow, orient="horizontal")
        self.bottomPane = ttk.Panedwindow(self.panedWindow,
                                          orient="horizontal")  # second pane

        self.tlFrame = ttk.Labelframe(self.topPane, text='Pane1')
        self.trFrame = ttk.Labelframe(self.topPane,
                                      text='Pane2')  # second pane
        self.blFrame = ttk.Labelframe(self.bottomPane, text='Pane3')
        self.brFrame = ttk.Labelframe(self.bottomPane, text='Pane4')

        self.panedWindow.add(self.topPane, weight=2)
        self.panedWindow.add(self.bottomPane, weight=1)
        self.topPane.add(self.tlFrame, weight=1)
        self.topPane.add(self.trFrame, weight=5)
        self.bottomPane.add(self.blFrame, weight=1)
        self.bottomPane.add(self.brFrame, weight=5)
        '''
		#Stop frames from resizing based on the widgets they contain
		self.controlFrame.grid_propagate(False)
		self.previewFrame.grid_propagate(False)
		self.timelineFrame.grid_propagate(False)
'''
        #Create and configure other need widgets within each frame
        self.selectedFileBox = scrolledtext.ScrolledText(self.trFrame)
        self.selectedFileBox.grid(row=0, column=0, sticky="nsew")
Ejemplo n.º 2
0
    def paned_window(self):
        self.panedwindow = ttk.Panedwindow(self.parent, orient = tk.HORIZONTAL)
        self.panedwindow.pack(expand = True, fill = tk.BOTH)

        self.left_pane = ttk.Frame(self.panedwindow, height = root.winfo_screenheight() - 140, relief = tk.SUNKEN)
        self.middle_pane = ttk.Frame(self.panedwindow, height = (root.winfo_screenheight() - 140), relief = tk.SUNKEN)
        self.right_pane = ttk.Frame(self.panedwindow, height = (root.winfo_screenheight() - 140), relief = tk.SUNKEN)
        self.panedwindow.add(self.left_pane, weight = 1)
        self.panedwindow.add(self.middle_pane, weight = 1) 
        self.panedwindow.add(self.right_pane, weight = 10)

        self.panedwindow_left = ttk.Panedwindow(self.left_pane, orient = tk.VERTICAL)
        self.panedwindow_left.pack(expand = True, fill = tk.BOTH)
        self.pane_projects = ttk.Frame(self.panedwindow_left, height = (root.winfo_screenheight() - 140) / 2, relief = tk.SUNKEN)
        self.pane_actions = ttk.Frame(self.panedwindow_left, height = (root.winfo_screenheight() - 140) / 2, relief = tk.SUNKEN)
        self.panedwindow_left.add(self.pane_projects, weight = 1)
        self.panedwindow_left.add(self.pane_actions, weight = 1)

        self.panewindow_middle = ttk.PanedWindow(self.middle_pane, orient = tk.VERTICAL)
        self.panewindow_middle.pack(expand = True, fill = tk.BOTH)
        self.pane_canvas = ttk.Frame(self.panewindow_middle, relief = tk.SUNKEN)
        self.pane_resources = ttk.Frame(self.panewindow_middle, width = 100, relief = tk.SUNKEN)
        self.panewindow_middle.add(self.pane_canvas, weight = 5)
        self.panewindow_middle.add(self.pane_resources, weight = 1)

        self.menubar = Menubar(self.parent)
        self.properties = Properties(self.right_pane)
        self.canvas = Canvas(self.properties)
        self.toolbar = Toolbar(self.pane_canvas, self.canvas)
        self.project_explorer = ProjectExplorer(self.pane_projects)
        self.canvas.create_Ui(self.pane_canvas)
        self.actions = Actions(self.pane_actions, self.canvas, self.properties)
        self.resources = Resources(self.pane_resources)
Ejemplo n.º 3
0
    def __init__(self, root):
        ttk.Frame.__init__(self, root)

        self.facts = []
        self.BF = ""

        fait = ttk.Panedwindow(self, orient="horizontal")
        fait.pack(fill='both', padx=10, pady=10)

        faitCtrl = ttk.Frame(fait)
        ttk.Label(faitCtrl, text="Base des faits").pack()
        self.list = tk.Listbox(faitCtrl)
        self.list.bind("<<ListboxSelect>>", self.affiche)
        self.indice = 1
        self.list.pack(side='top', fill='both', padx=10, pady=10)
        tk.Button(faitCtrl, text='Ajouter', bg="#83AF98",
                  command=self.insert).pack(side='left', padx=10, pady=5)
        tk.Button(faitCtrl,
                  text='Supprimer',
                  bg="#83AF98",
                  command=self.delete).pack(side='left', padx=10, pady=5)

        faitDef = ttk.Frame(fait)
        ttk.Label(faitDef, text="Fait").pack(side='top',
                                             fill='both',
                                             padx=10,
                                             pady=5)
        self.fact = tk.Text(faitDef, height=5)
        self.fact.bind('<Return>', self.insert)
        self.fact.pack(side='top', fill='both', padx=10, pady=5)

        fait.add(faitCtrl)
        fait.add(faitDef)

        fait_final = ttk.Panedwindow(self, orient="vertical")
        fait_final.pack(fill='both', padx=10, pady=10)
        self.label = ttk.Label(fait_final)

        fait_final.add(self.label)
        fait_final.add(
            tk.Button(fait_final,
                      text='ouvrir ...',
                      bg="#c48d84",
                      command=self.open))
        fait_final.add(
            tk.Button(fait_final,
                      text='Enregistrer',
                      bg="#c48d84",
                      command=self.save))
        fait_final.add(
            tk.Button(fait_final,
                      text='Enregistrer sous ...',
                      bg="#c48d84",
                      command=self.save))

        fait.pack()
        fait_final.pack()

        self.root = root
 def __init__(self, master, controller, vertical=True):
     super().__init__(master, controller)
     self.components = []
     if vertical:
         self.group = ttk.Panedwindow(self.frame, orient=VERTICAL)
         self.group.grid(column=0, row=0)
     else:
         self.group = ttk.Panedwindow(self.frame, orient=HORIZONTAL)
         self.group.grid(column=0, row=0)
Ejemplo n.º 5
0
def add_pane(parent, db_pane, command_pane_class, add_filler_pane=False):
    pane = ttk.Panedwindow(parent, orient=VERTICAL)

    command_pane_class(pane, db_pane)

    if add_filler_pane:
        pane.add(ttk.Panedwindow(pane, orient=VERTICAL))

    return pane
    def initUI(self):
        self.main_menu()

        self.subframe_right = tk.Frame(self.master, width=450, height=300)
        self.subframe_right.grid(row=0,
                                 column=1,
                                 padx=5,
                                 pady=3,
                                 sticky='nsew')

        self.p = ttk.Panedwindow(self.subframe_right, orient=tk.HORIZONTAL)
        self.q = ttk.Panedwindow(self.subframe_right, orient=tk.VERTICAL)

        self.draw_pane = ttk.Labelframe(self.p,
                                        text='',
                                        width=50,
                                        height=75,
                                        labelanchor='n')
        self.contig_pane = ttk.Labelframe(self.p,
                                          text='Select contig',
                                          width=100,
                                          height=75)
        self.p.add(self.contig_pane, weight=0)
        self.p.add(self.draw_pane, weight=0)
        self.p.grid(row=0, column=1, sticky='new')

        self.parameter_pane = ttk.Labelframe(self.q,
                                             text='Main parameters',
                                             width=150,
                                             height=200)
        self.annotation_pane = ttk.Labelframe(self.q,
                                              text='Annotation parameters',
                                              width=150,
                                              height=80)
        self.info_pane = ttk.Labelframe(self.q,
                                        text='Info',
                                        width=150,
                                        height=150)
        self.q.add(self.parameter_pane)
        self.q.add(self.annotation_pane)
        self.q.add(self.info_pane)
        self.q.grid(row=1, column=1, sticky='new')
        self.info_pane.columnconfigure(0, weight=5)

        self.info_box()
        self.text_frame()
        self.contig_menu()
        self.type_menu()
        self.draw_button()
        self.heat_menu()
        self.limit_menu()
        self.region_menu()
        self.anno_check()
        self.anno_type_menu()
        self.anno_limit_menu()
Ejemplo n.º 7
0
    def __init__(self, root):

        Frame.__init__(self, root)
        self.canvas = Canvas(root, borderwidth=0, background="pink")
        self.frame0 = ttk.Frame(self.canvas)
        self.pw = ttk.Panedwindow(self.frame0, orient=HORIZONTAL)
        self.pw.pack(fill='x', expand=True)
        self.frame1 = ttk.Frame(self.pw)
        self.frame2 = ttk.Frame(self.pw)
        self.vsb = Scrollbar(root,
                             orient="vertical",
                             command=self.canvas.yview)
        self.hsb = Scrollbar(root,
                             orient="horizontal",
                             command=self.canvas.xview)
        self.canvas.configure(yscrollcommand=self.vsb.set)
        self.canvas.configure(xscrollcommand=self.hsb.set)

        self.vsb.pack(side="right", fill="y")
        self.hsb.pack(side="bottom", fill="x")
        self.canvas.pack(side="left", fill="both", expand=True)
        self.canvas.create_window((0, 0),
                                  window=self.frame0,
                                  anchor="nw",
                                  tags="self.pw")
        self.pw.add(self.frame1, weight=1)
        self.pw.add(self.frame2, weight=4)

        self.frame0.bind("<Configure>", self.onFrameConfigure)
        self.frame0.bind('<Enter>', self._bound_to_mousewheel)
        self.frame0.bind('<Leave>', self._unbound_to_mousewheel)

        self.populate()
Ejemplo n.º 8
0
    def __init__(self, master=None, cnf={}, **kw):

        super().__init__(master=master, cnf=cnf, **kw)  # Frame初始化

        self.columnconfigure(0, weight=1)  # 设置列权重

        self.frame_button_main = FrameButtonMain(master=self, cnf=cnf,
                                                 **kw)  # 创建放置按钮的Frame
        self.frame_button_main.grid(row=0, column=0,
                                    sticky=NSEW)  # 设置GRID布局,放置在第1行第1列

        self.rowconfigure(1, weight=1)  # 设置行权重
        self.paned_win_v = ttk.Panedwindow(
            self, orient=VERTICAL)  # 添加垂直方向(VERTICAL)的推拉窗组件
        self.paned_win_v.grid(row=1, column=0,
                              sticky=NSEW)  # 设置GRID布局,放置在第2行第1列

        self.frame_output = FrameOutput(  # 创建放置output的Frame
            master=self.paned_win_v,  # master为上面创建的垂直推拉窗  
            cnf=cnf,
            **kw  # 传入其他参数
        )
        self.paned_win_v.add(self.frame_output,
                             weight=1)  # 往推拉窗中添加frame_output组件,并设置权重

        self.frame_editor = FrameEditor(  # 创建放置text_main的Frame
            master=self.paned_win_v,  # master为上面创建的垂直推拉窗  
            cnf=cnf,
            stdout=self.frame_output.text_stdout.stdout,
            stderr=self.frame_output.text_stderr.stdout,
            **kw  # 传入其他参数
        )
        self.paned_win_v.add(self.frame_editor,
                             weight=1000)  # 往推拉窗中添加frame_editor组件,并设置权重
Ejemplo n.º 9
0
    def __init__(self, tk_root):
        self.pw = ttk.Panedwindow(tk_root,
                                  orient=tk.HORIZONTAL)
        self.pw.pack(fill=tk.BOTH,
                     expand=True)
        self.frame1 = ttk.Frame(self.pw, width=100, height=500,
                                relief=tk.SUNKEN,)
        self.frame2 = ttk.Frame(self.pw, width=300, height=500,
                                relief=tk.SUNKEN,)
        self.frame3 = ttk.Frame(self.pw, width=75, height=500,
                                relief=tk.SUNKEN,)

        # The "weight" parameter gives a relative sizing
        # This is based on orientation, which here is horizontal
        self.pw.add(self.frame1, weight=1)
        self.pw.add(self.frame2, weight=3)

        # This inserts into the 1st index (frame1 is at index 0)
        # You cannot insert at index 2. You would need to use .add()
        self.pw.insert(1, self.frame3,)

        # Adds a block of text to the first frame
        # Notice how self.frame1 is the parent, not tk_root
        self.lbl = tk.Label(self.frame1, text='Hello',).grid(row=0,
                                                             column=0,
                                                             padx=10,
                                                             pady=25)
        # Adds a button to the second frame
        # Notice how self.frame3 is actually the middle frame
        # Notice how self.frame2 is the parent, not tk_root
        self.button = ttk.Button(self.frame2, text='Click',).grid(row=1,
                                                                  column=0,
                                                                  padx=20,
                                                                  pady=55)
Ejemplo n.º 10
0
def conclusion(window, row, column, columnspan):
    pane = ttk.Panedwindow(window, orient=tk.VERTICAL)
    pane.grid(row=row, column=column, columnspan=columnspan)  # Pack to make visible
    # first pane, which would get widgets gridded into it:
    frame = ttk.Labelframe(pane, text='Balances')
    # Sub Total
    tk.Label(frame, text="Sub Total").grid(row=0, column=0, columnspan=1, padx=10, pady=5)
    sub_tot = tk.Entry(frame, width=15)
    sub_tot.grid(row=0, column=2, columnspan=1, padx=10, pady=5)
    # Discount
    tk.Label(frame, text="Discount").grid(row=1, column=0, columnspan=1, padx=10, pady=5)
    temp = tk.StringVar(frame)
    temp.set("18%")  # default value
    w = tk.OptionMenu(frame, temp, "8%", "18%", "28%")
    w.grid(row=1, column=1, columnspan=1, padx=10, pady=5)
    disc = tk.Entry(frame, width=15)
    disc.grid(row=1, column=2, columnspan=1, padx=10, pady=5)
    # Sub Total with Discount
    tk.Label(frame, text="Sub Total").grid(row=2, column=0, columnspan=1, padx=10, pady=5)
    sub_tot_d = tk.Entry(frame, width=15)
    sub_tot_d.grid(row=2, column=2, columnspan=1, padx=10, pady=5)
    # GST
    tk.Label(frame, text="GST").grid(row=3, column=0, columnspan=1, padx=10, pady=5)
    temp = tk.StringVar(frame)
    temp.set("18%")  # default value
    w = tk.OptionMenu(frame, temp, "8%", "18%", "28%")
    w.grid(row=3, column=1, columnspan=1, padx=10, pady=5)
    gst = tk.Entry(frame, width=15)
    gst.grid(row=3, column=2, columnspan=1, padx=10, pady=5)
    # Total
    tk.Label(frame, text="Total").grid(row=4, column=0, columnspan=1, padx=10, pady=5)
    total = tk.Entry(frame, width=15)
    total.grid(row=4, column=2, columnspan=1, padx=10, pady=5)
    pane.add(frame)
Ejemplo n.º 11
0
 def initWidgets(self):
     # 创建Style
     style = ttk.Style()
     style.configure("fkit.TPanedwindow",
                     background='darkgray',
                     relief=RAISED)
     # 创建Panedwindow组件,通过style属性配置分隔线
     pwindow = ttk.Panedwindow(self.master,
                               orient=VERTICAL,
                               style="fkit.TPanedwindow")
     pwindow.pack(fill=BOTH, expand=1)
     first = ttk.Label(pwindow, text="第一个标签")
     # 调用add方法添加组件,每个组件一个区域
     pwindow.add(first)
     okBn = ttk.Button(
         pwindow,
         text="第二个按钮",
         # 调用remove()方法删除组件,该组件所在区域消失
         command=lambda: pwindow.remove(okBn))
     # 调用add方法添加组件,每个组件一个区域
     pwindow.add(okBn)
     entry = ttk.Entry(pwindow, width=30)
     # 调用add方法添加组件,每个组件一个区域
     pwindow.add(entry)
     # 调用insert方法插入组件
     pwindow.insert(1, Label(pwindow, text='插入的标签'))
Ejemplo n.º 12
0
    def __init__(self, master=None, **kw):
        
        super().__init__(master=master, **kw)  # Frame初始化
        
        self.rowconfigure(0, weight=1)  # 设置行权重
        self.columnconfigure(0, weight=1)  # 设置列权重
        
        # 添加水平方向(HORIZONTAL)的推拉窗组件
        self.paned_win_h = ttk.Panedwindow(self, orient=HORIZONTAL)  
        # 采用GRID布局,推拉窗放置在第1行第1列,如果有其他组件,可放置在其他行或者其他列
        self.paned_win_h.grid(row=0, column=0, sticky=NSEW)  
        
        self.text_stdout = EScrolledText(  # 创建text组件
            master=self.paned_win_h,  # master为上面创建的水平推拉窗  
            height=self.conf.TEXT_OUTPUT_HEIGHT,  # 设置text组件的高度
            )
        self.text_stdout.stdout(self.TEXT_STDOUT_NAME)  # 在text组件中输出初始化信息
        self.paned_win_h.add(self.text_stdout, weight=2)  # 往推拉窗中添加text组件,并设置权重

        self.text_stderr = EScrolledText(  # 创建text组件
            master=self.paned_win_h,  # master为上面创建的水平推拉窗   
            height=self.conf.TEXT_OUTPUT_HEIGHT  # 设置text组件的高度
            )
        self.text_stderr.stdout(self.TEXT_STDERR_NAME)  # 在text组件中输出初始化信息
        self.paned_win_h.add(self.text_stderr, weight=1)  # 往推拉窗中添加text组件,并设置权重
Ejemplo n.º 13
0
 def __init__(self, master=None, **kw):
     self.myname = type(self).__name__
     if pydevprog:
         dbg.entersub()
         dbg.dprint(1, '->', self.myname)
         dbg.dprint(4, self.myname, "is pydevprog")
         cfg.widgets['class'][self.myname] = self
     super().__init__(master, **kw)
     self.pane = ttk.Panedwindow(master, orient='horizontal')
     self.L = ttk.Frame(self.pane)
     self.L.grid(column=0, row=0, sticky='nsew')
     self.L.rowconfigure(0, weight=1, minsize=50)
     self.L.columnconfigure(0, weight=1, minsize=50)
     self.R = ttk.Frame(self.pane)
     self.R.grid(column=0, row=0, sticky='nsew')
     self.L.rowconfigure(0, weight=1, minsize=100)
     self.L.columnconfigure(0, weight=1, minsize=50)
     self.pane.add(self.L, weight=1)
     self.pane.add(self.R, weight=3)
     self.pane.grid(column=0, row=0, sticky='nsew')
     if pydevprog:
         cfg.widgets['L'] = self.L
         cfg.widgets['R'] = self.R
         dbg.dprint(1, '<-', self.myname)
         dbg.leavesub()
Ejemplo n.º 14
0
    def __init__(self, parent, controller):
        tk.Frame.__init__(self, parent)

        self.mainF2 = controller.mainF2
        self.mainF3 = controller.mainF3

        instruction = tk.Label(
            parent,
            text="Input the linear problem you are trying to solve below.",
            font=("Calibri", 15),
            background="#E3E3E3",
            anchor=tk.W)
        instruction.pack()

        p = ttk.Panedwindow(parent, orient="horizontal")
        self.editF1 = tk.LabelFrame(p, background="#A8A8A8", relief=tk.FLAT)
        self.editF2 = tk.LabelFrame(p, text='Problem Summary')

        self.editing = True
        self.solved = False
        self.c = []
        self.A = []
        self.b = []
        self.equality = []

        editBox = EditBox(self.editF1, self, controller)
        editBox.pack(expand=1, fill="both")

        p.add(self.editF1)
        p.add(self.editF2)
        p.pack(side=tk.TOP)
Ejemplo n.º 15
0
    def __init__(self, parent, controller):
        tk.Frame.__init__(self, parent)

        p = ttk.Panedwindow(parent, orient='HORIZONTAL')
        # first pane, which would get widgets gridded into it:
        item_search = ttk.Labelframe(p,
                                     text='Item Search',
                                     width=375,
                                     height=375)
        item_history = ttk.Labelframe(p,
                                      text='Item Info',
                                      width=375,
                                      height=375)  # second pane
        p.add(item_search)
        p.add(item_history)

        label = tk.Label(self, text="Menards Price Tracker", font=LARGE_FONT)
        label.pack(pady=10, padx=10)

        button3 = ttk.Button(self,
                             text="Graph Page",
                             command=lambda: controller.show_frame(PageThree))
        button3.pack()

        ttk.Entry(self)
Ejemplo n.º 16
0
    def __init__(self, master):
        self.master = master
        self.panedWindow = ttk.Panedwindow(
            self.master, orient=tk.HORIZONTAL
        )  # orient panes horizontally next to each other
        self.panedWindow.pack(
            fill=tk.BOTH, expand=True
        )  # occupy full master window and enable expand property

        self.frame1 = ttk.Frame(self.panedWindow,
                                width=100,
                                height=300,
                                relief=tk.SUNKEN)
        self.frame2 = ttk.Frame(self.panedWindow,
                                width=400,
                                height=400,
                                relief=tk.SUNKEN)

        self.panedWindow.add(self.frame1, weight=1)
        self.panedWindow.add(self.frame2, weight=3)

        self.button = ttk.Button(self.frame1,
                                 text='Add frame in Paned Window',
                                 command=self.AddFrame)
        self.button.pack()
Ejemplo n.º 17
0
def tampilanDepan():
    rootframe = ttk.Frame(root)
    judul = ttk.Label(rootframe, text='Selamat Datang di Program Konversi Biner\n', style='Root.TLabel', padding='0 60 0 0')
    isi = ttk.Label(rootframe, text='1. Untuk masuk kedalam program konversi, anda harus login terlebih dahulu.\n2. Login details ID = Admin, Pass = Admin\n \
        ', style='Isi.TLabel', padding='0 0 0 0')
    judul.pack()
    isi.pack()
    panedtime = ttk.Panedwindow(rootframe, orient=VERTICAL)
    noteDesimal = ttk.Labelframe(panedtime, text='Desimal', width=150, height=150)
    noteBiner = ttk.Labelframe(panedtime, text='Biner', width=150, height=150)
    noteHexa = ttk.Labelframe(panedtime, text='Hexa', width=150, height=150)
    panedtime.add(noteDesimal)
    panedtime.add(noteBiner)
    panedtime.add(noteHexa)
    panedtime.pack()
    def updateTimeText():
        jam = bin(int(time.strftime("%H")))[2:].zfill(6)
        menit = bin(int(time.strftime("%M")))[2:].zfill(6)
        detik = bin(int(time.strftime("%S")))[2:].zfill(6)
        current = time.strftime("%H:%M:%S")
        current2 = "{}:{}:{}".format(jam,menit,detik)
        current3 = "{}:{}:{}".format(hex(int(jam,2))[2:],hex(int(menit,2))[2:],hex(int(detik,2))[2:]).upper()
        timeText.configure(text=current)
        timeBiner.configure(text=current2)
        timeHexa.configure(text=current3)
        root.after(1000, updateTimeText)
    timeText = ttk.Label(noteDesimal, text='', font=("Helvetica",25))
    timeBiner = ttk.Label(noteBiner, text='', font=("Helvetica",25))
    timeHexa = ttk.Label(noteHexa, text='', font=("Helvetica",25))
    timeText.pack()
    timeBiner.pack()
    timeHexa.pack()
    updateTimeText()
    rootframe.pack(fill=BOTH, expand=YES)
Ejemplo n.º 18
0
def init(args: Any) -> None:
    global _root
    global _tab_manager
    global _parsed_args
    global _paned_window
    assert _root is None and _tab_manager is None and _parsed_args is None and _paned_window is None
    assert args is not None

    log.debug("init() starts")
    _parsed_args = args

    _root = tkinter.Tk(
        className="Porcupine")  # class name shows up in my alt+tab list
    _root.protocol("WM_DELETE_WINDOW", quit)
    _root.report_callback_exception = _log_tkinter_error

    _paned_window = ttk.Panedwindow(_root, orient="horizontal")
    settings.remember_divider_positions(_paned_window,
                                        "main_panedwindow_dividers", [250])
    _root.bind(
        "<<PluginsLoaded>>",
        lambda event: get_paned_window().event_generate(
            "<<DividersFromSettings>>"),
        add=True,
    )
    _paned_window.pack(fill="both", expand=True)

    _tab_manager = tabs.TabManager(_paned_window)
    _paned_window.add(_tab_manager)  # type: ignore[no-untyped-call]

    log.debug("init() done")
Ejemplo n.º 19
0
    def buildTabs(self, parent: ttk.Notebook) -> None:
        """
        Builds the individual tabs inside the tabbed layout design.

        Parameters
        ----------
        parent : ttk.Notebook
            A tkinter object that can have tabs applied to it.

        Returns
        -------
        None

        """

        # For some reason, icons need to be member variables to display
        self.inputTabIcon = tk.PhotoImage(file='images/input-data-1.png')
        self.viewTabIcon = tk.PhotoImage(file='images/three-dim-graph.png')

        # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        # Tab 1: Data Input
        # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        inputTab = ttk.Frame(parent, )
        inputTab_kwargs = {
            'text': 'Data Input',
            'image': self.inputTabIcon,
            'compound': tk.LEFT
        }
        parent.add(inputTab, **inputTab_kwargs)
        eb.buildInputElements(
            self,
            inputTab,
        )

        # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        # Tab 2: Visualizer
        # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        viewTab = ttk.Frame(parent, )
        viewTab_kwargs = {
            'text': 'Viewer',
            'image': self.viewTabIcon,
            'compound': tk.LEFT
        }
        parent.add(viewTab, **viewTab_kwargs)

        # - - - - - - - - - - - - - - - -
        # Holder for editor/viewer
        graphPanes = ttk.Panedwindow(viewTab, orient=tk.HORIZONTAL)
        graphPanes.pack(fill=tk.BOTH, expand=True)

        self.editPane, self.viewPane = eb.buildEditAndViewPanes(graphPanes)

        eb.buildEditorElements(self, self.editPane, self.plotCols,
                               self.availableRuns, self.waitToPlot,
                               self.startPlot)

        # Setting the starting run options
        cf.setRunOptions(self, )
def table(window, row, column, columnspan):
    pane = ttk.Panedwindow(window, orient=tk.VERTICAL)
    pane.grid(row=row, column=column,
              columnspan=columnspan)  # Pack to make visible
    # first pane, which would get widgets gridded into it:
    frame = ttk.Labelframe(pane, text='Table')
    tk.Label(frame, text="S. No.").grid(row=0,
                                        column=0,
                                        columnspan=1,
                                        padx=10,
                                        pady=5)
    tk.Label(frame, text="Description of works").grid(row=0,
                                                      column=1,
                                                      columnspan=1,
                                                      padx=10,
                                                      pady=5)
    tk.Label(frame, text="Qty.").grid(row=0,
                                      column=2,
                                      columnspan=1,
                                      padx=(10, 5),
                                      pady=5)
    tk.Label(frame, text="Unit").grid(row=0,
                                      column=3,
                                      columnspan=1,
                                      padx=(0, 0),
                                      pady=5)
    tk.Label(frame, text="Rate").grid(row=0,
                                      column=4,
                                      columnspan=1,
                                      padx=10,
                                      pady=5)
    tk.Label(frame, text="Amount").grid(row=0,
                                        column=5,
                                        columnspan=1,
                                        padx=10,
                                        pady=5)

    # Tabular Row
    s_no = tk.Entry(frame, width=15)
    s_no.grid(row=1, column=0, columnspan=1, padx=10, pady=5)
    desc = tk.Entry(frame, width=84)
    desc.grid(row=1, column=1, columnspan=1, padx=10, pady=5)
    qty = tk.Entry(frame, width=15)
    qty.grid(row=1, column=2, columnspan=1, padx=10, pady=5)
    unit = tk.Entry(frame, width=15)
    unit.grid(row=1, column=3, columnspan=1, padx=10, pady=5)
    rate = tk.Entry(frame, width=15)
    rate.grid(row=1, column=4, columnspan=1, padx=10, pady=5)
    amt = tk.Entry(frame, width=15)
    amt.grid(row=1, column=5, columnspan=1, padx=10, pady=5)

    # Add row
    tk.Button(frame, text="Add row").grid(row=2,
                                          column=0,
                                          columnspan=1,
                                          padx=10,
                                          pady=5)  # Add command later
    pane.add(frame)
Ejemplo n.º 21
0
 def __init_labelframe(self, key):
     '''Add a label frame for widgets.'''
     f = ttk.Frame(self.set_frame[-1])
     self.pane = ttk.Panedwindow(f, orient='vertical', width=400)
     self.lf = tk.LabelFrame(self.pane, text=self.p.label[key])
     self.lf.config(borderwidth=2, width=400, relief='groove')
     self.pane.add(self.lf)
     self.pane.pack(side='left', fill='both')
     f.pack(fill='both')
    def __init__(self, *args, **kwargs):
        tk.Tk.__init__(self, *args, **kwargs)

        self.video_source = 0

        self.vid = MyVideoCapture(self.video_source)

        panedwindow = ttk.Panedwindow(self, orient=HORIZONTAL)

        #close the webcam feed and gui window
        self.protocol("WM_DELETE_WINDOW", self.close)

        panedwindow.pack(fill=BOTH, expand=True)

        #Frame for displaying video from webcam (Leftside)
        vidFrame = ttk.Frame(panedwindow,
                             width=self.vid.width,
                             height=self.vid.height,
                             relief=SUNKEN)

        #Frame for various other GUI elements (Rightside)
        container = ttk.Frame(panedwindow,
                              width=100,
                              height=400,
                              relief=SUNKEN)
        panedwindow.add(vidFrame, weight=1)
        panedwindow.add(container, weight=4)

        #setting height and width for video frame based on  webcam resolution
        self.canvas = tkinter.Canvas(vidFrame,
                                     width=self.vid.width,
                                     height=self.vid.height)
        self.canvas.pack()

        self.btn_snapshot = tkinter.Button(vidFrame,
                                           text="Snapshot",
                                           width=50,
                                           command=self.snapshot)
        self.btn_snapshot.pack(anchor=tkinter.CENTER, expand=True)

        self.delay = 15
        self.update()  #Function to update frames from webcam

        container.grid_rowconfigure(0, weight=1)
        container.grid_columnconfigure(0, weight=1)

        self.c = container
        self.frames = {}

        for F in (startPage, SelectCorrectOptions, SubmittedAnswers):
            frame = F(container, self)  #startPage container
            frame.grid(row=0, column=0, sticky="nsew")
            self.frames[F] = frame

        self.show_frame(startPage)
        self.mainloop()
Ejemplo n.º 23
0
    def __init__(self, master):
        master.title('Employees Attendance')
        master.resizable(False, False)
        master.configure(background='#e1d8b9')

        self.style = ttk.Style()
        self.style.configure('TFrame', background='#e1d8b9')
        self.style.configure('TButton',
                             background='#e1d8b9',
                             font=('Arial', 10))
        self.style.configure('TLabel',
                             background='#e1d8b9',
                             font=('Arial', 10))

        self.employee_id = StringVar()
        panedwindow = ttk.Panedwindow(master, orient=VERTICAL)
        panedwindow.pack(fill=BOTH, expand=True)
        self.top_frame = ttk.Frame(panedwindow,
                                   width=400,
                                   height=100,
                                   relief=SUNKEN)

        insert_emp_id = ttk.Label(self.top_frame, text="Insert employee id:")
        insert_emp_id.grid(row=0, column=0, padx=10, pady=25)
        emp_id_entry = ttk.Entry(self.top_frame, textvariable=self.employee_id)
        emp_id_entry.grid(row=0, column=1, padx=10, pady=25)
        mark_attendance_button = ttk.Button(
            self.top_frame, text="Mark attendance")  # add command=
        mark_attendance_button.grid(row=0, column=2, padx=10, pady=25)

        self.bottom_frame = ttk.Frame(panedwindow,
                                      width=400,
                                      height=50,
                                      relief=SUNKEN)
        ttk.Button(self.bottom_frame,
                   text='Add Employee').grid(row=0,
                                             column=0,
                                             padx=5,
                                             pady=10,
                                             sticky='e')  # add command=
        ttk.Button(self.bottom_frame,
                   text='Delete Employee').grid(row=0,
                                                column=1,
                                                pady=10,
                                                sticky='w')  # add command=

        panedwindow.add(self.top_frame)
        panedwindow.add(self.bottom_frame)

        self.status_text = StringVar('')
        status = Label(master,
                       textvariable=self.status_text,
                       bd=1,
                       relief=SUNKEN,
                       anchor=W)
        status.pack(side=BOTTOM, fill=X)
Ejemplo n.º 24
0
    def __init__(self, master):
        global result_box

        master.title('USGS Earthquake Data')
        frame0 = ttk.Panedwindow(master, orient=HORIZONTAL)
        frame0.pack(fill=BOTH, expand=True)
        frame1 = ttk.Frame(frame0, width=100, height=300, relief=SUNKEN)
        frame2 = ttk.Frame(frame0, width=500, height=300, relief=SUNKEN)
        frame0.add(frame1, weight=1)
        frame0.add(frame2, weight=4)

        Label(frame1,
              text="Sample period",
              bg="black",
              fg="white",
              justify=LEFT).pack(fill=X)
        self.period = StringVar()
        ttk.Radiobutton(frame1,
                        text="Past Day",
                        variable=self.period,
                        value="day").pack(anchor='w')
        ttk.Radiobutton(frame1,
                        text="Past Week",
                        variable=self.period,
                        value="week").pack(anchor='w')
        ttk.Radiobutton(frame1,
                        text="Past Month",
                        variable=self.period,
                        value="month").pack(anchor='w')
        self.period.set("day")

        Label(frame1, text="Sort By", bg="black", fg="white",
              justify=LEFT).pack(fill=X)
        self.sortby = IntVar()
        ttk.Radiobutton(frame1,
                        text="Magnitude",
                        variable=self.sortby,
                        value=0).pack(anchor='w')
        ttk.Radiobutton(frame1, text="Location", variable=self.sortby,
                        value=1).pack(anchor='w')
        ttk.Radiobutton(frame1, text="Distance", variable=self.sortby,
                        value=2).pack(anchor='w')
        self.sortby.set(0)

        result_button = ttk.Button(frame1)
        result_button.config(text="Get Results", command=self.submit)
        result_button.pack(anchor='s')

        result_box = Text(frame2, width=85, height=20)
        scrollbar = Scrollbar(frame2,
                              orient=VERTICAL,
                              command=result_box.yview)
        scrollbar.pack(side=RIGHT, fill=Y)
        result_box["yscrollcommand"] = scrollbar.set
        result_box.pack(side=LEFT, fill=BOTH, expand=YES)
Ejemplo n.º 25
0
    def file_init(self):
        """
        初始化选择文件和操作按钮控件
        :return:None
        """
        # 创建Panedwindow组件 horizontal
        pwindow = ttk.Panedwindow(self, orient=HORIZONTAL)
        pwindow.pack(fill=X, expand=NO, padx=10, pady=10)

        filePath = StringVar()
        fileInput = ttk.Entry(self, width=80, textvariable=filePath)
        fileInput.pack(fill=None,
                       expand=NO,
                       ipady=5,
                       side=LEFT,
                       pady=5,
                       padx=2)
        pwindow.add(fileInput)  # 调用add方法添加组件,每个组件一个区域

        def choose_fiel():
            selectFileName = tk.filedialog.askopenfilename(
                title='选择文件')  # 选择文件
            filePath.set(selectFileName)
            self.compare_file = selectFileName
            pass

        btn_getfile = Button(self,
                             text='选择文件',
                             font=("仿宋", 18, "bold"),
                             width=10,
                             height=1,
                             command=choose_fiel)
        btn_getfile.pack(fill=None,
                         expand=NO,
                         ipady=2,
                         side=LEFT,
                         pady=5,
                         padx=2)
        pwindow.add(btn_getfile)

        btn_getfile = Button(self,
                             text='开始对比',
                             font=("仿宋", 18, "bold"),
                             width=10,
                             height=1,
                             command=self.run_Compare)
        btn_getfile.pack(fill=None,
                         expand=NO,
                         ipady=2,
                         side=LEFT,
                         pady=5,
                         padx=2)
        self.button = btn_getfile
        pwindow.add(btn_getfile)
        pass
Ejemplo n.º 26
0
 def initWidgets(self):
     # 创建style对象,用来管理ttk组件样式
     style = ttk.Style()
     style.configure("fkit.TPanedwindow",
                     background="darkgray",
                     relief=RAISED)
     pwindow = ttk.Panedwindow(self.master,
                               orient=VERTICAL,
                               style="fkit.TPanedwindow")
     pwindow.pack(fill=BOTH, expand=1)
     # 创建Panedwindow组件,通过style属性设置分割线
     self.first = Label(pwindow,
                        text="hello world",
                        height=2,
                        font=('Verdana', 10),
                        fg='green')
     # 调用add方法添加组件,每个组件占一个区域
     pwindow.add(self.first)
     # 创建button按钮
     okBn = Button(
         pwindow,
         text="on",
         width=30,
         height=2,
         bg='pink',
         fg='black',
         command=self.open_on  # 点击按钮调用self.open_on实例
     )
     okBn2 = Button(pwindow,
                    text="off",
                    width=30,
                    height=2,
                    bg='pink',
                    fg='black',
                    command=self.open_off)
     okBn3 = Button(pwindow,
                    text="reboot",
                    width=30,
                    height=2,
                    bg='pink',
                    fg='black',
                    command=self.open_reboot)
     okBn4 = Button(pwindow,
                    text="Enter",
                    width=30,
                    height=2,
                    bg='pink',
                    fg='black',
                    command=self.open_enter)
     # 调用add方法加入这些button
     pwindow.add(okBn)
     pwindow.add(okBn2)
     pwindow.add(okBn3)
     pwindow.add(okBn4)
Ejemplo n.º 27
0
def main():
    global root, phase, sourceFileString, noiseFileString
    
    mainframe = ttk.Frame(root, padding="3 3 12 12")
    mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
    mainframe.columnconfigure(0, weight=1)
    mainframe.rowconfigure(0, weight=1)

    p = ttk.Panedwindow(mainframe, orient=HORIZONTAL)
    p.grid(column=1,row=1,sticky=(N,W,E,S))

    # first pane, which would get widgets gridded into it:
    f1 = ttk.Labelframe(p, text='Source Audio', width=400, height=300)
    ttk.Label(f1, text="Press \"A\" to choose the noise file", command=getSourceFileString()).grid(sticky=W)
    ttk.Label(f1, textvariable=sourceFileString).grid( sticky=(W, E))

    p.add(f1)
    f2 = ttk.Labelframe(p, text='Noise Audio', width=400, height=300)   # second pane
    ttk.Label(f2, text="Press \"K\" to choose the noise file", command=getNoiseFileString()).grid(sticky=W)
    ttk.Label(f2, textvariable=noiseFileString).grid(sticky=W)
    #f2.pack()
    p.add(f2)
    
    secondaryPane = ttk.Panedwindow(mainframe, orient=VERTICAL)
    secondaryPane.grid(column=1,row=2,sticky=(N,W,E,S))
    ttk.Label(secondaryPane, text="Press the space bar to slice the audio files", command=sliceAudio()).grid(sticky="W")
    ttk.Label(secondaryPane, text="Output:").grid(sticky=W)
    ttk.Label(secondaryPane, textvariable=outputFileString).grid(sticky=W)
    
    for child in mainframe.winfo_children(): child.grid_configure(padx=5, pady=5)

    root.bind('a', getSourceFileString)
    root.bind('k', getNoiseFileString)
    root.bind('<space>',sliceAudio)
    phase += 1

    # Let the window wrap all of the content we just loaded and then
    # prevent it from resizing
    root.resizable(FALSE,FALSE)
    root.mainloop()
Ejemplo n.º 28
0
    def __init__(self,root):

        Frame.__init__(self,root)

        #   Title of the UI
        self.label = ttk.Label(root, text = "File Moving UI", justify = CENTER, font = ('Courier', 13, 'bold'))
        self.label.pack()

        #   Creation of the paned window
        self.panedwindow = ttk.Panedwindow(root, orient = VERTICAL)
        self.panedwindow.pack(expand = False)
        self.frame1 = ttk.Frame(self.panedwindow, width = 600, height = 400)
        self.frame2 = ttk.Frame(self.panedwindow, width = 600, height = 200)
        self.frame3 = ttk.Frame(self.panedwindow, width = 600, height = 50, relief = SUNKEN)
        self.frame4 = ttk.Frame(self.panedwindow, width = 600, height = 50, relief = SUNKEN)
        self.frame5 = ttk.Frame(self.panedwindow, width = 600, height = 25)
        self.panedwindow.add(self.frame1, weight = 1)
        self.panedwindow.add(self.frame2, weight = 4)
        self.panedwindow.add(self.frame3, weight = 4)
        self.panedwindow.add(self.frame4, weight = 4)
        self.panedwindow.add(self.frame5, weight = 1)

        #   Frame1 instructions
        self.instructions = ttk.Label(self.frame1, text = "In order to execute the file transfer for files modified within the last 24 hours, please select an initial and destination folder. You may check eligible files for the file transfer with the 'Show Eligible Files' button after selecting an initial folder", justify = CENTER, font = ('Courier', 12))
        self.instructions.config(wraplength = 600)
        self.instructions.pack()

        #   Source/Destinations
        self.field1 = ttk.Label(self.frame3, text = "Source Folder:")
        self.field2 = ttk.Label(self.frame4, text = "Destination Folder:")
        self.field1.grid()
        self.field2.grid()
        
        #   Define buttons
        self.browse = ttk.Button(self.frame2, text = "Browse Initial Folder", command = lambda:sqlliteFunc.folderselect1(self))
        self.browse2 = ttk.Button(self.frame2, text = "Browse Destination Folder", command = lambda:sqlliteFunc.folderselect2(self))
        self.button = ttk.Button(self.frame2, text = "Show Eligible Files", command = lambda:sqlliteFunc.show_files(self), state = 'disabled')
        self.executer = ttk.Button(self.frame2, text = "Execute File Transfer", command = lambda:sqlliteFunc.the_mover(self), state = 'disabled')

        #   Placing buttons down on grid
        self.browse.grid(row = 0, column = 1, padx = 40)
        self.browse2.grid(row = 0, column = 2, padx = 40)
        self.button.grid(row = 0, column = 3, padx = 40)
        self.executer.grid(row = 0, column = 4, padx = 40)
        
        self.path = ''
        self.destination = ''
        self.LbStamp = ttk.Label(self.frame5, text = "Last File Check at:")
        self.LbStamp.pack()
        
        sqlliteFunc.create_db(self)
        sqlliteFunc.timer(self)
Ejemplo n.º 29
0
    def _setup_desc_ui(self, parent):
        """Initialize the description editors of the view.

        TODO:
            Add Novan description validation.
        
        Parameters:
            parent: The parent widget.
        """
        parent.columnconfigure(0, weight=1)
        parent.rowconfigure(0, weight=1)

        desc_label = ttk.Labelframe(parent, text='Description')
        desc_label.grid(sticky='nsew')
        desc_label.columnconfigure(0, weight=1)
        desc_label.rowconfigure(0, weight=1)
        desc = ttk.Panedwindow(desc_label, orient=VERTICAL)
        desc.grid(sticky='nsew')

        # Labelframes
        nvn_desc_label = ttk.Labelframe(desc, text='Novan')
        en_desc_label = ttk.Labelframe(desc, text='English')
        nvn_desc_label.grid(sticky='nsew')
        en_desc_label.grid(sticky='nsew')
        nvn_desc_label.columnconfigure(0, weight=1)
        en_desc_label.columnconfigure(0, weight=1)
        nvn_desc_label.rowconfigure(0, weight=1)
        en_desc_label.rowconfigure(0, weight=1)
        desc.add(nvn_desc_label)
        desc.add(en_desc_label)

        # Text fields
        # Novan
        self.text_nvn_desc = VarText(nvn_desc_label, wrap="word", height=10, width=60,
            variable=self.nvn_description_controller.nvn)
        self.text_nvn_desc.grid(sticky='nsew', column=0, row=0)
        nvn_scrollbar = ttk.Scrollbar(nvn_desc_label, orient=VERTICAL, command=self.text_nvn_desc.yview)
        self.text_nvn_desc.configure(yscrollcommand=nvn_scrollbar.set)
        nvn_scrollbar.grid(sticky='nse', column=1, row=0)
        
        # English
        self.text_en_desc = VarText(en_desc_label, wrap="word", height=10, width=60, variable=self.var_en_desc)
        self.text_en_desc.grid(sticky='nsew', column=0, row=0)
        en_scrollbar = ttk.Scrollbar(en_desc_label, orient=VERTICAL, command=self.text_en_desc.yview)
        self.text_en_desc.configure(yscrollcommand=en_scrollbar.set)
        en_scrollbar.grid(sticky='nse', column=1, row=0)

        # Bindings
        self.text_nvn_desc.bind("<KeyRelease>", self.update)
        self.text_en_desc.bind("<KeyRelease>", self.update)
Ejemplo n.º 30
0
    def __init__(self, *args: Any, preview_dir, **kwargs: Any) -> None:
        super().__init__(*args, **kwargs)

        self.images = {}
        self.load_images(
            {
                "txt_icon": "file-text.png",
                "graph_icon": "file-graph.png",
                "log_icon": "file-log.png",
                "open_button": "open.png",
                "save_button": "save.png",
                "save_all_button": "save_all.png",
                "run_button": "run.png",
                "clear_button": "clear.png",
            }
        )
        self.preview_dir = preview_dir
        self.programstate = ProgramState(self, self.preview_dir)

        # make directory for graph previews
        os.mkdir(os.path.join(self.preview_dir, "graph_previews"))

        self.panes = ttk.Panedwindow(self, orient="horizontal")
        self.panes.grid(row=8, column=0, sticky="nsew")
        self.create_top_frame()
        self.create_parameters_frame()
        self.create_filelist_frame()
        self.create_preview_frame()

        ttk.Separator(self, orient="horizontal").grid(row=1, column=0, sticky="we")

        self.input_file = tk.StringVar()
        ttk.Label(self, text="Input file").grid(row=2, column=0, sticky="w")
        ttk.Entry(self, textvariable=self.input_file).grid(row=3, column=0, sticky="we")

        # spacing
        ttk.Label(self, font=tkfont.Font(size=5)).grid(row=4, column=0)

        self.reference_file = tk.StringVar()
        ttk.Label(self, text="Reference").grid(row=5, column=0, sticky="w")
        ttk.Entry(self, textvariable=self.reference_file).grid(
            row=6, column=0, sticky="we"
        )

        ttk.Label(self, font=tkfont.Font(size=5)).grid(row=7, column=0)

        self.rowconfigure(8, weight=1)
        self.columnconfigure(0, weight=1)
        self.grid(row=0, column=0, sticky="nsew")