Tuesday, 1 March 2016

fire event of text entered in textinput

#!/usr/bin/kivy
import kivy
kivy.require('1.7.2')

from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.uix.gridlayout import GridLayout
from kivy.uix.textinput import TextInput

Builder.load_string('''
<MenuScreen>:
    GridLayout:
        padding: 5
        spacing: 5
        cols: 1
        padding: root.width*0.1
        TextInput:
            on_text: root.val1()
''')

class MenuScreen(Screen):
    def val1(self):
        print "i am executed"

sm = ScreenManager()
menu = MenuScreen(name='menu')
sm.add_widget(menu)

class MainApp(App):
    def build(self):
        return sm

if __name__ == '__main__':
    MainApp().run()

Sunday, 7 February 2016

Change screen on button press by calling function

#!/usr/bin/kivy
import kivy
kivy.require('1.7.2')

from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.uix.gridlayout import GridLayout
from kivy.uix.button import Button
import webbrowser
from kivy.uix.video import Video

Builder.load_string('''
<MenuScreen>:
    GridLayout:
        padding: 5
        spacing: 5
        cols: 1
        padding: root.width*0.1
        Button:
            background_normal: ''
            background_color:(0.862, 0.078, 0.235, 0.9)
            text: 'PLAY'
            font_size: '20sp'
            on_press: root.val1()
<Vdo>:
    GridLayout:
        padding: 5
        spacing: 5
        cols: 1
        padding: root.width*0.1
        Label:
            text: 'Hello'
   
   
''')

class MenuScreen(Screen):
    def val1(self):
        print "i am executed"
        sm.current='vdo'
       

class Vdo(Screen):
    def val2(self):
        print "i am executed"
   

sm = ScreenManager()
menu = MenuScreen(name='menu')
sm.add_widget(menu)
vdo = Vdo(name='vdo')
sm.add_widget(vdo)

class MainApp(App):
    def build(self):
        return sm

if __name__ == '__main__':
    MainApp().run()

Change screen on button press from directly calling screen

#!/usr/bin/kivy
import kivy
kivy.require('1.7.2')

from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.uix.gridlayout import GridLayout
from kivy.uix.button import Button
import webbrowser
from kivy.uix.video import Video

Builder.load_string('''
<MenuScreen>:
    GridLayout:
        padding: 5
        spacing: 5
        cols: 1
        padding: root.width*0.1
        Button:
            background_normal: ''
            background_color:(0.862, 0.078, 0.235, 0.9)
            text: 'PLAY'
            font_size: '20sp'
            on_press: root.manager.current = 'vdo'
<Vdo>:
    GridLayout:
        padding: 5
        spacing: 5
        cols: 1
        padding: root.width*0.1
        Label:
            text: 'HURRAY'
 
 
''')

class MenuScreen(Screen):
    def val1(self):
        print "i am executed"
     

class Vdo(Screen):
    def val2(self):
        print "i am executed"
 

sm = ScreenManager()
menu = MenuScreen(name='menu')
sm.add_widget(menu)
vdo = Vdo(name='vdo')
sm.add_widget(vdo)

class MainApp(App):
    def build(self):
        return sm

if __name__ == '__main__':
    MainApp().run()

Play video from external link

from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.widget import Widget
from kivy.uix.video import Video
   
parent= Widget()
button= Button()
       
class VideoApp(App):
    def build(self):
         self.v = Video(source='http://techslides.com/demos/sample-videos/small.webm', state='play')
         return self.v

if __name__ == '__main__':
    VideoApp().run()

Play avi video in kivy

from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.widget import Widget
from kivy.uix.video import Video
   
parent= Widget()
button= Button()
       
class VideoApp(App):
    def build(self):
         self.v = Video(source='D:\sample.avi', state='play')
         return self.v

if __name__ == '__main__':
    VideoApp().run()

Button to open link set in sqldb

#!/usr/bin/kivy
import kivy
kivy.require('1.7.2')

from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.uix.gridlayout import GridLayout
from kivy.uix.button import Button
import webbrowser
import pymysql.cursors

connection = pymysql.connect(host='sql6.freemysqlhosting.net',
                             user='sqlxxxx',
                             password='yyyyyy',
                             db='yyyyyyy',
                             charset='utf8mb4',
                             cursorclass=pymysql.cursors.DictCursor)
try:
    with connection.cursor() as cursor:
        # Read a single record
        sql = "SELECT `url` FROM `link` WHERE `id`=%s"
        cursor.execute(sql, ('1'))
        result = cursor.fetchone()
        print(result)
        webpage=result['url']
        print webpage
finally:
    connection.close()

Builder.load_string('''
<MenuScreen>:
    GridLayout:
        padding: 5
        spacing: 5
        cols: 1
        padding: root.width*0.1
        Button:
            background_normal: ''
            background_color:(0.862, 0.078, 0.235, 0.9)
            text: 'PLAY'
            font_size: '20sp'
            on_press: root.val1()
''')

class MenuScreen(Screen):
    def val1(self):
        global result
        print "i am executed"
        webbrowser.open(webpage)

sm = ScreenManager()
menu = MenuScreen(name='menu')
sm.add_widget(menu)

class MainApp(App):
    def build(self):
        return sm

if __name__ == '__main__':
    MainApp().run()

Saturday, 30 January 2016

External Image as Button

#!/usr/bin/kivy
import kivy
kivy.require('1.7.2')

from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.uix.gridlayout import GridLayout
from kivy.uix.button import Button

Builder.load_string('''
<MenuScreen>:
    GridLayout:
        cols: 1
        Button:
            on_press: root.val1()
            AsyncImage:
                source: "http://www.shortday.in/wp-content/uploads/2015/05/priyanka-chopra.jpg"
                size: self.parent.width, self.parent.height
                allow_stretch: True
                keep_ratio: False
         
''')

class MenuScreen(Screen):
    def val1(self):
        print "i am executed"

sm = ScreenManager()
menu = MenuScreen(name='menu')
sm.add_widget(menu)

class MainApp(App):
    def build(self):
        return sm

if __name__ == '__main__':
    MainApp().run()