Beispiel #1
0
    def __main(self):
        self.top = Widget.NewTop()
        frame = Widget.Labelframe(self.top)
        label = Widget.Label(frame)
        entry = Widget.Entry(frame)
        button1 = Widget.Button(frame)

        Window.widg = self.top
        Window.Top("Preference settint")

        Window.widg = frame
        Window.Config(text=u"设置偏好")
        Window.Pack()

        Window.widg = label
        Window.Config(text=u"文件路径:")
        Window.Pack(side="left")

        Window.widg = entry
        self.__entry_var = Window.ConfigVar("textvariable")
        Window.Config(state=Tkconstants.DISABLED)
        Window.Pack(side="left")

        Window.widg = button1
        command = basic.register_command(button1, self.__select_dir)
        Window.Config(text=u"打开文件", command=command)
        Window.Pack(side="left")
Beispiel #2
0
    def ListWithScrollbar(cls, master):
        '''Sample usage:
            from com.ui import ROOT    
            frame1 = Widget.Labelframe(ROOT,text = "sssss")
            frame1.rowconfigure(0,weight =1, minsize = 0)
            frame1.columnconfigure(0,weight =1, minsize = 0)
            Window.widg = frame1
            Window.Pack(side = "top", fill="both", expand="yes", padx = "0.2c")
                
            (l,x,y) = Components.ListWithScrollbar(frame1)
            elems = ["Don't speculate, measure", "Waste not, want not", "Early to bed and early to rise makes a man healthy, wealthy, and wise", "Ask not what your country can do for you, ask what you can do for your country", "I shall return", "NOT", "A picture is worth a thousand words", "User interfaces are hard to build", "Thou shalt not steal", "A penny for your thoughts", "Fool me once, shame on you;  fool me twice, shame on me", "Every cloud has a silver lining", "Where there's smoke there's fire", "It takes one to know one", "Curiosity killed the cat", "Take this job and shove it", "Up a creek without a paddle", "I'm mad as hell and I'm not going to take it any more", "An apple a day keeps the doctor away", "Don't look a gift horse in the mouth", "Measure twice, cut once"]
            l.insert(0,*elems)
            ROOT.mainloop()
        '''
        lb = Widget.Listbox(master, width=20, height=10, setgrid=1)
        s_x = Widget.Scrollbar(master,
                               orient=Tkconstants.HORIZONTAL,
                               command=lb.xview)
        s_y = Widget.Scrollbar(master,
                               orient=Tkconstants.VERTICAL,
                               command=lb.yview)

        Window.widg = lb
        Window.Config(xscrollcommand=s_x.set, yscrollcommand=s_y.set)
        Window.Grid(row=0,
                    column=0,
                    rowspan=1,
                    columnspan=1,
                    sticky=Tkconstants.NSEW)

        Window.widg = s_y
        Window.Grid(row=0,
                    column=1,
                    rowspan=1,
                    columnspan=1,
                    sticky=Tkconstants.NSEW)

        Window.widg = s_x
        Window.Grid(row=1,
                    column=0,
                    rowspan=1,
                    columnspan=1,
                    sticky=Tkconstants.NSEW)

        return (lb, s_x, s_y)
Beispiel #3
0
    def LabelWithEntryAndButton(cls, master, grid_tree):
        '''Sample usage
            from com.ui import ROOT    
            frame1 = Widget.Labelframe(ROOT,text = "YYYY")
            Window.widg = frame1        
            Window.Pack(side = "top", fill="both", expand="yes", padx = "0.2c")
            
            grid_tree = [
                        [(u"用户名:", u"登录")],
                        [(u"密码:", ""),(u"验证码:", "")], 
                    ]
            widgets = Components.LabelWithEntryAndButton(frame1, grid_tree)
            widgets[0][1].insert("end","hi handsome boy.")    
            ROOT.mainloop()
        '''
        result = []
        rows = len(grid_tree)
        for row in range(rows):
            result.append([])
            column = -1

            groups = grid_tree[row]
            for lable_name, button_name in groups:
                column = column + 1
                label = Widget.Label(master, text=lable_name)
                result[row].append(label)
                Window.widg = label
                Window.Grid(row, column, "w")

                column = column + 1
                entry = Widget.Entry(master)
                result[row].append(entry)
                Window.widg = entry
                Window.Grid(row, column, "ew")

                if button_name:
                    column = column + 1
                    button = Widget.Button(master, text=button_name)
                    result[row].append(button)
                    Window.widg = button
                    Window.Grid(row, column, "e")
        return result
Beispiel #4
0
    def TextWithScrollbar(cls, master):
        '''Sample usage:
            from com.ui import ROOT    
            frame1 = Widget.Labelframe(ROOT,text = "XXXX")
            Window.widg = frame1        
            Window.Pack(side = "top", fill="both", expand="yes", padx = "0.2c")
            
            (t,x,y) = Components.TextWithScrollbar(frame1)    
            t.insert("end","0.ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss\n")
            t.insert("end","1.sdf\n")    
            ROOT.mainloop()
        '''
        f = TkFont()
        # wrap-->设置当一行文本的长度超过width选项设置的宽度时,是否换行; "none"不自动换行, "char"按字符自动换行, "word"按单词自动换行
        tx = Widget.Text(master,
                         width=60,
                         height=24,
                         font=f.font,
                         wrap="word",
                         setgrid=1)
        s_x = Widget.Scrollbar(master,
                               orient=Tkconstants.HORIZONTAL,
                               command=tx.xview)
        s_y = Widget.Scrollbar(master,
                               orient=Tkconstants.VERTICAL,
                               command=tx.yview)

        Window.widg = s_y
        Window.Pack(side="right", fill="y")

        Window.widg = s_x
        Window.Pack(side="bottom", fill="x")

        Window.widg = tx
        Window.Config(xscrollcommand=s_x.set, yscrollcommand=s_y.set)
        Window.Pack(side="top", fill="both", expand="yes")

        return (tx, s_x, s_y)
Beispiel #5
0
    def __get_menu_bar(self):
        menu_tree = [{
            u"文件": [u"打开", u"偏好设置"]
        }, {
            u"运行": [u"停止", u"选中运行", u"全部运行"]
        }, {
            u"报告": [u"查看报告", u"邮件发送报告"]
        }, {
            u"关于": u"版本信息"
        }]
        Widget.GenerateMenu(menu0, menu_tree, menu_objs)

        def test_function(*args):
            msg = "oh,you are too handsome.\n"
            for i in args:
                msg = msg + " " + str(i)
            MSG.Showinfo("Hi My Demo", msg)

        def pop_ui(*args):
            Preference()

        node = menu_objs.get(u"关于")
        Widget.RegisterMenu(
            node, u"版本信息", test_function,
            u"It's a demo usage of my Tkinter packages.\n -Bruce Luo(罗科峰)")

        node = menu_objs.get(u"运行")
        Widget.RegisterMenu(node, u"停止", test_function, u"clicked 停止")
        Widget.RegisterMenu(node, u"选中运行", test_function, u"clicked 选中运行")
        Widget.RegisterMenu(node, u"全部运行", test_function, u"clicked 全部运行")

        node = menu_objs.get(u"报告")
        Widget.RegisterMenu(node, u"查看报告", test_function, u"clicked 查看报告")
        Widget.RegisterMenu(node, u"邮件发送报告", test_function, u"clicked 邮件发送报告")

        node = menu_objs.get(u"文件")
        Widget.RegisterMenu(node, u"打开", test_function, u"clicked 打开")
        Widget.RegisterMenu(node, u"偏好设置", pop_ui)
Beispiel #6
0
    def __main(self):
        self.frame1         = Widget.Labelframe(ROOT)
        self.frame2         = Widget.Labelframe(ROOT)
        
        label_caseid        = Widget.Label(self.frame1)
        entry_caseid        = Widget.Entry(self.frame1)
        
        label_steps         = Widget.Label(self.frame1)
        text_steps          = Widget.Text(self.frame1)
        
        label_des_name      = Widget.Label(self.frame1)
        text_des_name       = Widget.Text(self.frame1)
        
        label_precommand    = Widget.Label(self.frame1)
        text_precommand     = Widget.Text(self.frame1)
        
        label_head          = Widget.Label(self.frame1)
        text_head           = Widget.Text(self.frame1)
        
        label_data          = Widget.Label(self.frame1)
        text_data           = Widget.Text(self.frame1)
        
        label_postcommand   = Widget.Label(self.frame1)
        text_postcommand    = Widget.Text(self.frame1)
        
        label_verify        = Widget.Label(self.frame1)
        text_verify         = Widget.Text(self.frame1)       
        
        label_casetype      = Widget.Label(self.frame1)
        text_casetype       = Widget.Entry(self.frame1)  
        
        label_author        = Widget.Label(self.frame1)
        text_author         = Widget.Entry(self.frame1)       
        
        list_control        = Widget.Listbox(self.frame2)
        


        text_conf={"width" : 40, "height" : 5}
        entry_conf = {"width":40}
        # frame1
        Window.widg = label_caseid
        Window.Config(text = "TestCaseID:")
        Window.Grid(row=0, column=0,sticky="w")             
        Window.widg = entry_caseid
        Window.Config(**entry_conf)
        Window.Grid(row=0, column=1,sticky="EW")        
                
        Window.widg = label_casetype
        Window.Config(text = "CaseType:")
        Window.Grid(row=1, column=0,sticky="w")             
        Window.widg = text_casetype
        Window.Config(**entry_conf)
        Window.Grid(row=1, column=1,sticky="EW")
        
        Window.widg = label_author
        Window.Config(text = "Tester:")
        Window.Grid(row=2, column=0,sticky="w")            
        Window.widg = text_author
        Window.Config(**entry_conf)
        Window.Grid(row=2, column=1,sticky="EW")  
        
        Window.widg = label_steps
        Window.Config(text = "Steps:")
        Window.Grid(row=3, column=0,sticky="w")                
        Window.widg = text_steps
        Window.Config(**text_conf)
        Window.Grid(row=3, column=1,sticky="EW")
        
        Window.widg = label_des_name
        Window.Config(text = "Description:")
        Window.Grid(row=4, column=0,sticky="w")            
        Window.widg = text_des_name
        Window.Config(**text_conf)
        Window.Grid(row=4, column=1,sticky="EW")        
        
        Window.widg = label_precommand
        Window.Config(text = "PreCommand:")
        Window.Grid(row=5, column=0,sticky="w")                
        Window.widg = text_precommand
        Window.Config(**text_conf)
        Window.Grid(row=5, column=1,sticky="EW")
        
        Window.widg = label_head
        Window.Config(text = "Head:")
        Window.Grid(row=6, column=0,sticky="w")                
        Window.widg = text_head
        Window.Config(**text_conf)
        Window.Grid(row=6, column=1,sticky="EW")
        
        Window.widg = label_data
        Window.Config(text = "Data:")
        Window.Grid(row=7, column=0,sticky="w")                
        Window.widg = text_data
        Window.Config(**text_conf)
        Window.Grid(row=7, column=1,sticky="EW")
        
        Window.widg = label_postcommand
        Window.Config(text = "PostCommand:")
        Window.Grid(row=8, column=0,sticky="w")                
        Window.widg = text_postcommand
        Window.Config(**text_conf)
        Window.Grid(row=8, column=1,sticky="EW")
        
        Window.widg = label_verify
        Window.Config(text = "Verify:")
        Window.Grid(row=9, column=0,sticky="w")                
        Window.widg = text_verify
        Window.Config(**text_conf)
        Window.Grid(row=9, column=1,sticky="EW")   
        
        Window.widg = self.frame1
        Window.Config(text = "Part1")
        Window.Pack(side="left",fill = Tkconstants.X)
        
        # frame2
        Window.widg = list_control
        self.console_output = Window.ConfigVar("listvariable")
        Window.Pack(side = "top", fill = Tkconstants.BOTH, expand="yes")
        
        Window.widg = self.frame2
        Window.Config(text = "Part3")
        Window.Pack(side = "left", fill = Tkconstants.BOTH, expand = Tkconstants.YES)
Beispiel #7
0
======================================================================

UI and Web Http automation frame for python.

'''
import sc
from com import basic
from com.basic import MSG,FileDilog
from com.ui import Window,Widget,ROOT,Tkconstants
from com.suite import Components

Window.widg = ROOT
Window.Top(sc.TITLE, geometry="917x580+179+130", resizable_x=1,resizable_y=1)

menubar = Widget.Menu(ROOT)
Window.Config(menu = menubar)
ROOT.option_add("*Menu.tearOff", 0)

class Menu:
    
    def __init__(self,loop=False):
        self.__main()
        self.__navigator_ui = AiTest()
        basic.mainloop(ROOT, loop=loop)        
        
    def __main(self):            
        self.menus = {}        
        Components.GenerateMenu(menubar, sc.MENUS, self.menus)
        self.__set_menus_command()
        
Beispiel #8
0
        "WEB_verify_attr",
        "WEB_verify_count",
        "WEB_verify_displayed",
        "WEB_verify_text",
        "WEB_verify_title",
        "WEB_verify_url",
        "WEB_wait",
    ],
    "tmp":
    "",
}

Window.widg = ROOT
Window.Top("Demo tk", resizable_x=1, resizable_y=1)

frame1 = Widget.Labelframe(ROOT)
frame2 = Widget.Labelframe(ROOT)

text1 = Widget.Text(frame1)
text2 = Widget.Text(frame1)

list1 = Widget.Listbox(frame2)
x_scroll_1 = Widget.Scrollbar(frame2)
y_scroll_1 = Widget.Scrollbar(frame2)

menu0 = Widget.Menu(ROOT)
ROOT.config(menu=menu0)
ROOT.option_add("*Menu.tearOff", 0)
menu_objs = {}