AkamaSoft
3 / 5
Mots 1201-1800 / 2895
import App from kivy.uix.button import Button from kivy.uix.boxlayout import BoxLayout class SimpleApp(App): def build(self): layout = BoxLayout(orientation='vertical') btn = Button(text='Hello World') btn1 = Button(text="Welcome to edureka") layout.add_widget(btn) layout.add_widget((btn1)) return layout if __name__ == "__main__": SimpleApp().run()

Disposition du flotteur

Il honore les propriétés size_hint et pos_hint de ses widgets enfants.

from kivy.app import App
from kivy.uix.scatter import Scatter
from kivy.uix.label import Label
from kivy.uix.floatlayout import FloatLayout
 
 
class SimpleApp(App):
    def build(self):
        f = FloatLayout()
        s = Scatter()
        l = Label(text="Edureka!", font_size=150)
 
        f.add_widget(s)
        s.add_widget(l)
        return f
 
 
if __name__ == "__main__":
    SimpleApp().run()

Disposition de la grille

Il organise les widgets enfants dans une boîte.

from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.gridlayout import GridLayout
 
 
class SimpleApp(App):
    def build(self):
        layout = GridLayout(cols=2)
        layout.add_widget(Button(text='hello'))
        layout.add_widget(Button(text='world'))
        layout.add_widget(Button(text='welcome to'))
        layout.add_widget(Button(text='edureka'))
        return layout
 
 
if __name__ == "__main__":
    SimpleApp().run()

Mise en page

Il est utilisé pour créer une mise en page multi-pages.

from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.pagelayout import PageLayout
 
 
class SimpleApp(App):
    def build(self):
        layout = PageLayout()
        layout.add_widget(Button(text='hello',background_color=(1,0,0,1)))
        layout.add_widget(Button(text='world',background_color=(0,1,0,1)))
        layout.add_widget(Button(text='welcome to',background_color=(1,1,1,1)))
        layout.add_widget(Button(text='edureka',background_color=(0,1,1,1)))
        return layout
 
 
if __name__ == "__main__":
    SimpleApp().run()

Disposition relative

Il vous permet de définir des coordonnées relatives pour les widgets enfants.

from kivy.app import App
from kivy.uix.relativelayout import RelativeLayout
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.button import Button
from kivy.uix.label import Label
from kivy.lang import Builder
 
res = Builder.load_string('''BoxLayout:
    Label:
        text: 'Left'
    Button:
        text: 'Middle'
        on_touch_down: print('Middle: {}'.format(args[1].pos))
    RelativeLayout:
        on_touch_down: print('Relative: {}'.format(args[1].pos))
        Button:
            text: 'Right'
            on_touch_down: print('Right: {}'.format(args[1].pos))''')
 
 
class SimpleApp(App):
    def build(self):
        return res
 
 
if __name__ == "__main__":
    SimpleApp().run()

Production:

Disposition de dispersion

Il est implémenté comme une disposition flottante à l'intérieur d'un scatter. Vous pouvez repositionner les widgets à l'aide de la mise en page scatter.

from kivy.app import App
from kivy.uix.scatterlayout import ScatterLayout
from kivy.uix.label import Label
 
class SimpleApp(App):
    def build(self):
        s = ScatterLayout()
        l = Label(text='edureka')
        s.add_widget(l)
        return s
 
 
if __name__ == "__main__":
    SimpleApp().run()

Disposition de la pile

Il organise les widgets horizontalement ou verticalement et autant qu'il peut en contenir.

from kivy.app import App
from kivy.uix.stacklayout import StackLayout
from kivy.uix.button import Button
 
class SimpleApp(App):
    def build(self):
        root = StackLayout()
        for i in range(25):
            btn = Button(text=str(i), width=100 + i * 5, size_hint=(None, 0.15))
            root.add_widget(btn)
        return root
 
 
if __name__ == "__main__":
    SimpleApp().run()

Maintenant que nous en avons terminé avec les mises en page, jetons un coup d'œil aux widgets Behavior dans Kivy.

Widgets de comportement

Ces widgets ne font aucun rendu mais agissent sur les instructions graphiques ou le comportement d'interaction (tactile) de leurs enfants.

  • Dispersion
  • Vue du pochoir
  • Dispersion
  • Vue du pochoir
  • Scatter est utilisé pour créer des widgets interactifs qui peuvent être tournés, mis à l'échelle avec deux doigts ou plus sur un système multitouch.

    from kivy.app import App
    from kivy.uix.scatter import Scatter
    from kivy.uix.image import Image
     
     
    class SimpleApp(App):
        def build(self):
            s = Scatter()
            s.add_widget(Image(source="logo.png"))
            return s
     
     
    if __name__ == "__main__":
        SimpleApp().run()
    

    Vue du pochoir

    La vue Stencil limite le dessin des widgets enfants au cadre de délimitation d'une vue Stencil. Dans l'exemple, nous utilisons un simple widget d'étiquette. La vue stencil est mieux utilisée lorsque nous dessinons dans un canevas et limite les activités à une zone limitée de l'application plutôt qu'à la fenêtre entière.

    from kivy.app import App
    from kivy.uix.stencilview import StencilView
    from kivy.uix.label import Label
    from kivy.uix.scatter import Scatter
     
     
    class SimpleApp(App):
        def build(self):
            s = StencilView()
            sc = Scatter()
            s.add_widget(sc)
            sc.add_widget(Label(text='edureka'))
            return s
     
     
    if __name__ == "__main__":
        SimpleApp().run()
    

    Gestionnaire d'écran

    C'est un widget qui permet de gérer plusieurs écrans pour votre application. Il utilise une base de transition pour passer d'un écran à l'autre.

    from kivy.app import App from kivy.base import runTouchApp from kivy.lang import Builder from kivy.properties import ListProperty from kivy.uix.boxlayout import BoxLayout from
    Page 3 sur 5 (2895 mots au total)
    60% lu

    Auteur: Mvondo bekey anael

    ceo | founder
    COMPETENCES
    • • Maitrise des environnements Unix, Linux, Mac, Windows, IOS et Android
    • • Programmation Orientée Objet : Python, Ruby, C++, Java, PHP, Js
    • • Certifier linux Lpi (101, 102, 202, 203, 301, 303)
    • • Certifier Adwords Professional , Certifier Ceh (6, 7, 8, 9, 10, 11)
    • • Maîtrise parfaite de : Docker, VMware sphère, Microsoft Hyper, Citrix, Virtual box,promox vm
    Annonce