<pre><code>import kivy
kivy.require('1.0.6') # replace with your current kivy version !
from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.floatlayout import FloatLayout
from kivy.properties import ObjectProperty
from kivy.garden.graph import Graph, MeshLinePlot
import math
from Tkinter import Tk
from tkFileDialog import askopenfilename
import os
class myLayout(FloatLayout):
def __init__(self, **kwargs):
super(myLayout, self).__init__(**kwargs)
btn1 = Button(text = "click 1",pos_hint= {'x': .1,'top': .2},size_hint = (.1,.1))
btn2 = Button(text = "click 2", pos_hint= {'x': .4,'top': .2},size_hint = (.1,.1))
btn3 = Button(text = "click 3", pos_hint= {'x': .66,'top': .2},size_hint = (.1,.1))
btn1.bind(on_press=self.clk1)
btn2.bind(on_press=self.clk2)
btn3.bind(on_press=self.clk3)
self.add_widget(btn1)
self.add_widget(btn2)
self.add_widget(btn3)
def clk1(self, obj):
print("Hello World")
def clk2(self, object):
Tk().withdraw() # we don't want a full GUI, so keep the root window from appearing
filename = askopenfilename() # show an "Open" dialog box and return the path to the selected file
print(filename)
def clk3(self, object):
graph = Graph(xlabel='X', ylabel='Y', x_ticks_minor=5,x_ticks_major=25, y_ticks_major=1,y_grid_label=True, x_grid_label=True, padding=5,
x_grid=True, y_grid=True, xmin=-0, xmax=100, ymin=-1, ymax=1)
plot = MeshLinePlot(color=[1, 0, 0, 1])
plot.points = [(x, math.sin(x / 10.)) for x in range(0, 101)]
graph.add_plot(plot)
self.add_widget(graph)
class NameApp(App):
def build(self):
mL = myLayout()
return mL
if __name__ == '__main__':
NameApp().run()
</code></pre>
<p>下面是正在运行的代码,但是我如何使用画布绘制绘图和选项来更改大小和形状。</p>