<object class="Button" name="button"> <text>Click me!</text> </object> <object class="StaticText" name="state"> <text>|</text> </object> </object> </resource> """ class Demo(object): title = "Simple XML" description = "Parsing a simple XML UI string" states = "/-\\|" def build(self, tk, parent): self.counter = 0 s = SimpleXMLBuilder(parent, self) s.fromString(xmlui) self.button.click = self.doit def doit(self, event): self.state.text = self.states[self.counter%4] self.counter += 1 Standalone = standalone(Demo) if __name__ == '__main__': serve_demo(Demo)
parent.append(self.b7, row=2, column=0) parent.append(self.b8, row=2, column=1) parent.append(self.b9, row=2, column=2) parent.append(self.substract, row=2, column=3) # 4 5 6 + parent.append(self.b4, row=3, column=0) parent.append(self.b5, row=3, column=1) parent.append(self.b6, row=3, column=2) parent.append(self.plus, row=3, column=3) # 1 2 3 = parent.append(self.b1, row=4, column=0) parent.append(self.b2, row=4, column=1) parent.append(self.b3, row=4, column=2) parent.append(self.equals, row=4, column=3, rowspan=2) # 0 . parent.append(self.b0, row=5, column=0, colspan=2) parent.append(self.point, row=5, column=2) parent.layout() Demo = Calculator # demorunner expects this Standalone = standalone(Calculator) if __name__ == '__main__': serve_demo(Demo)
class Demo(object): title = "State" description = "Demonstrates control state" def build(self, tk, parent): button = Button(tk, "Click me!") t1 = StaticText(tk, 'Enabled:') c1 = CheckBox(tk) t2 = StaticText(tk, 'Visible:') c2 = CheckBox(tk, checked=True) def toggle_state(x): button.enabled = not button.enabled c1.click = toggle_state def toggle_visibility(x): button.visible = c2.checked c2.click = toggle_visibility button.enabled = False parent.append(button) parent.append(t1) parent.append(c1) parent.append(t2) parent.append(c2) Standalone = standalone(Demo) if __name__ == '__main__': serve_demo(Demo)
# 7 8 9 - parent.append(self.b7, row=2, column=0) parent.append(self.b8, row=2, column=1) parent.append(self.b9, row=2, column=2) parent.append(self.substract, row=2, column=3) # 4 5 6 + parent.append(self.b4, row=3, column=0) parent.append(self.b5, row=3, column=1) parent.append(self.b6, row=3, column=2) parent.append(self.plus, row=3, column=3) # 1 2 3 = parent.append(self.b1, row=4, column=0) parent.append(self.b2, row=4, column=1) parent.append(self.b3, row=4, column=2) parent.append(self.equals, row=4, column=3, rowspan=2) # 0 . parent.append(self.b0, row=5, column=0, colspan=2) parent.append(self.point, row=5, column=2) parent.layout() Demo = Calculator # demorunner expects this Standalone = standalone(Calculator) if __name__ == '__main__': serve_demo(Demo)