19
Nov

Python Kivy – criando uma interface gráfica


Hello everybody! How are you guys?
We’ve already learned a lot of things about Python But all of our programs until now, were using the terminal and the command prompt. Well, now we have sufficient knowledge for creating our own graphical interfaces. And this is what we are going to do in this video!
So, let’s go! Very well. The first thing that we are going to do is to install one package to help us creating our graphical interfaces. There are many out there, but we are going to use this one, which is called Kivy. It’s a very interesting framework, because it works in many different platforms it is GPU accelerated, and so you can even build games with it, and it is very easy to work with. So, to install it, we will click the download link, and it will show many different instructions to install it into different platforms. Ok, so if you use Windows, there are some instructions here You can install it using pip, ok? You need to run these codes here that are into these gray boxes. So, here you are going to update pip, wheel and the setuptools, right? So that you can install new packages. And here are the dependencies, ok? This docutils, pygments, pypiwin32, kivy.deps.sdl and glew. And, if you need to use something related to video and streaming, you have to install this package here too, ok? Ok, then you just have run pip install kivy. They use this python -m but if you only write pip install kivy, like we were doing in the last videos, it will also work, ok? Very well. And if you are using Ubuntu the instructions are here. You will need to add this repository. I sugest adding the stable one. Then you update your repositories and install it: sudo apt-get install python-kivy or python3-kivy, if you want the python3 version, which is what we are using. So, I sugest using this command here. As I use Arch Linux here things are easier. I just have to write here python-kivy, put the password and it’s done. Very well, now that it is installed, we are going to code our graphical interface. Well, we are going to create a file named main.py. And now, we have to understand how this Kivy works. So, to create our graphical interface, we are going to create an App. In the Kivy jargon, we have to import this App, which is the responsible to make everything work, right? It will open a window, and make the things to make our program work. So we are going to import it in the following manner: from kivy.app import App. Ok? Uppercase App. Very well. With this, we can only create a window ok? Just the very basic. Then we have to build upon it, with what they call widgets. They are like little apps, ok? Little pieces that we will assemble to create our interface. For example, a button, a label, which is a text. In short, there are lots of things. In this video, we are going to create a button. It won’t do anything yet but we will run the app, a window will appear with a button, which we can click. So, to create this button, we are going to import it, right? So: from kivy.uix.button import Button, ok? We imported the button and, now, we will create a class that inherits this class here, App, ok? So this is what our App is going to be, this class. Ok, so we will put here the name of our application, which will be Test Then, we will inherit from this App class. So, it’s going to have all of the functionalities of this App class. And we are going to define a method which is called build, which is going to initialize the interface, ok? And construct our application. In other words, it’s here that we are going to put our button. So it will return it. Everything this method returns is going to be constructed in the window of our application. We are going to put here the button. We will instantiate the button. Very well. So, this is the code of our application. It’s this class with the build method, that constructs the app. And, then, what it returns is what is going to appear in our window. That simple. So, up to now, we created this class, and here we are going to instantiate it, like follows. We will create it, right? Test() And, then, as we inherited from this class App, it is going to have a run method So, this method here that will run our app, test. Ok? So, this is the code. This is all we have to do to create a graphical interface. So, let’s run this and see what happens. Very well. You guys saw that it initialized here a lot of things. So, this is a very complicated thing, but it let’s you see all it’s doing. You don’t need to worry with anything of this, ok? It already initialized many things with OpenGL, in short, a lot of things. It opened a window and, here, there is a button in which we can click. You saw that it turns blue, right? So this is our graphical interface. Ok, so this button is kinda boring, right? It doesn’t have anything. Let’s put some text in it. We are going to edit the main file and this button here, this class of buttons, we can initialize with a lot of arguments. One of them is this text which is going to be the displayed text of the button. So here, we are going to write: Hello World, ok? Very well. It’s that simple. We will run this and our button will have a text: Hello World, right? Ok, so it’s all for this video. I hope that you enjoyed and until next time 🙂

Tags: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

66 Comments

  • Dev. Software's Java says:

    First, you're the best youtuber of python!

  • Victor Cunha says:

    Muito bom! Mais pra frente poderia fazer uma interface com o chatbot?!

  • Rodrigo LorD says:

    + um like você merece

  • Rodrigo LorD says:

    Qual sistema operacional você usa

  • Server Error gamer says:

    Excelente, vc poderia fazer um tutorial de como instalar o chatbot no heroku para o pc n ter q ficar ligado para rodar o chatbot no telegram :3 por favoooooor :3

  • Hítalo Ramon says:

    Excelente, +1 inscrito, espero ver mais conteúdo de kivy aqui no canal. Poderia fazer um vídeo explicando como usar o KivyMD ?

  • Leandro Marques says:

    Aqui deu esse erro:

    CRITICAL] [Window ] Unable to find any valuable Window provider at all!
    egl_rpi – ImportError: cannot import name 'bcm'
    File "/usr/lib/python3/dist-packages/kivy/core/__init__.py", lin
    fromlist=[modulename], level=0)
    File "/usr/lib/python3/dist-packages/kivy/core/window/window_egl
    from kivy.lib.vidcore_lite import bcm, egl

    sdl2 – TypeError: expected bytes, str found
    File "/usr/lib/python3/dist-packages/kivy/core/__init__.py", lin
    cls = cls()
    File "/usr/lib/python3/dist-packages/kivy/core/window/window_sdl
    super(WindowSDL, self).__init__()
    File "/usr/lib/python3/dist-packages/kivy/core/window/__init__.p
    self.create_window()
    File "/usr/lib/python3/dist-packages/kivy/core/window/window_sdl
    self.fullscreen, resizable, state)
    File "kivy/core/window/_window_sdl2.pyx", line 94, in kivy.core./_window_sdl2.c:1936)

    x11 – ImportError: No module named 'kivy.core.window.window_x11'
    File "/usr/lib/python3/dist-packages/kivy/core/__init__.py", lin
    fromlist=[modulename], level=0)

    [CRITICAL] [App ] Unable to get a Window, abort.
    Exception ignored in: 'kivy.properties.dpi2px'
    Traceback (most recent call last):
    File "/usr/lib/python3/dist-packages/kivy/utils.py", line 513,
    retval = self.func(inst)
    File "/usr/lib/python3/dist-packages/kivy/metrics.py", line 175
    EventLoop.ensure_window()
    File "/usr/lib/python3/dist-packages/kivy/base.py", line 126, i
    sys.exit(1)
    SystemExit: 1
    [CRITICAL] [App ] Unable to get a Window, abort.

  • Kiamon says:

    Como q poderia fazer para rodar essa interface no Android? Seria possível?

  • Junio Jsv™ says:

    Sou mais usar o Tkinter

  • Matheus Mota says:

    Qual distribuicao linux voce utiliza ?

  • fewlocks says:

    cara, não consigo fazer o básico, que é instalar o kivy… Isso está me frustrando! ele retorna o erro:
    /tmp/pycharm-packaging/Kivy/kivy/graphics/svg.c:1:2: error: #error Do not use this file, it is the result of a failed Cython compilation.

  • Sr.nandu Filho says:

    Muito bom me deu uma noção de como são feitos os apps em python

  • Schiniga _ says:

    opa, cara, quando vou instalar kivi, usando os comandos pelo cmd do pc, da erro, diz que python não é um programa, algo assim

  • Lavi Senju says:

    man, muito obrigada, já estou fazendo os programinhas iniciais, tinha feito o básico em Tk e tranquilo mas esse kivy ele simplesmente não abre a interface, só compila o código </3 qual sera o erro?

  • 〉 Jexeld 〈 says:

    meu pip n funciona

  • 〉 Jexeld 〈 says:

    meu pip n funciona

  • johann jefferson says:

    Ola bom dia, tarde , noite kkkkkk então eu estou querendo criar uma interface/system de gráfico personalizada em um jogo online q eu jogo, n sei se vc conhece mas ele se chama lineage 2 e gostaria de saber se seus tutor podem funcionar nele.

  • aprender python says:

    Error of failed request: BadWindow (invalid Window parameter)
    apareceu isso…….oque faço

  • Não sei Meu nome says:

    Não entendi como se instala. Explica por favor. =]

  • Flavio Firmino says:

    Vídeo aula com fundo preto, é terrível! O bom mesmo seria um fundo mais claro, como o tradicional branco. No mais, vídeo ótimos a nível de conteúdo. Parabéns!!!

  • Trz says:

    faco isso td no propt de comando ??

  • Lécio L says:

    Estou estudando portar uma aplicação em Windows forms (visual Basic) e estou decidido entre Java e Python. Será que não existe uma IDE que crie de forma visual botões, textbox e etc?

    Vi um antigo projeto que faz essa conversão em python que usa o Pythoncard (vb2py). Tem alguma Ide que o usa? Já ouviu falar desse vb2py?

  • Elison Santos says:

    Mano, você vai fazer mais conteúdos sobre Kivy?

  • Felipe Horizonte says:

    what is your graphic interface?

  • Walker do pubg says:

    amigo o meu da erro na Linha do Import Button(text=Texto)

  • 100EXATAS says:

    Eu consigo abrir essa interface mesmo em um PC fraco???

  • Green BR old says:

    se instalarem algun modulo do python que tenha no pip algo como -m, entre outros… e em caso de erro, basta so colocar pip install (modulo) so isso!
    sem -m ,sem upgrade, etc
    eu nao sei porque esses metodos nao funciona para alguns ,mas a dica que dei valeu XD

  • Rafael Gomes dos Reis says:

    Valeu muito bom o video.

  • Leandro de Oliveira says:

    de erro de opengl kkkkkkkkkkkkkkkkkkkk merdaaaaaaaaaaaaaaaaaaaaaa

  • Marlon Martins Cunha says:

    Muito bom cara, parabéns pelo excelente canal!

  • Andre TR says:

    Excelente VideoAula! Mas voce poderia me responder umas dúvidas?
    Eu tenho o python 3.7 no meu pc, o kivy ja funciona estavelmente com essa versao ou só com as versoes mais antigas?

    O Kivy serve para criar aplicativos para quais versoes do android? Só as mais recentes ou também as mais antigas como a versao 2.3

  • iFroyd Coder says:

    O like foi instantâneo quando vi q usava arch

  • Danilo Namitala says:

    Isso que vc tá usando pra fazer o código é uma ide? Ou só um editor de texto?

  • Rodrigo Melo says:

    Show de bola brother! Vou assistir todas aulas. Uma sugestão: faça um vídeo apenas sobre a instalação do Kivy (não tem nenhum em português decente) pois dá problema demais. No próprio site não fala pra instalar o Cython e pygame, antes de partir pro pypiwin32 fora que não consegui arrumar direito no Python 3.4( talvez pelo Cython e pygame – nem sei mais pois não uso o 3.4 mais), só conseguindo arrumar direito no Python 3.6.
    Um detalhe tb: mostre como se faz no Windows tb pra galera que não usa Linux. Abraço cordial.

  • Maykel Pereira says:

    É sério isso ? Partiu Windows form c Sharp.

  • Madruga Sabia! says:

    dar para cria app android e por na playstore

  • Dev Wissens says:

    arch linux é muiiito dificil

  • Fabio Lukas says:

    o meu deu esse error.
    sdl2 – ImportError: DLL load failed: Não foi possível encontrar o módulo especificado.

  • Bruno Sousa says:

    Olá, fiz todo o procedimento que você explica no vídeo porém ele da um erro e não encontro solução
    Traceback (most recent call last):
    File "main.py", line 1, in <module>
    from kivy.app import App
    ModuleNotFoundError: No module named 'kivy'

  • Kurtindo Retrô says:

    vou começar agora esse curso
    eu tava aprendendo a usar o TKinter mais vou deixar pra depois

  • Jairo Araujo says:

    Vou te contar uma coisa: o resto do mundo deveria copiar o Visual Studio da Microsoft…eles não percebem que é a melhor IDE do mundo… não faz sentido em pleno século XXI a pessoa ficar na unha criando uma interface gráfica e ainda de péssima qualidade… programador tem que perder tempo com código, não com GUI… tem que ser arrastar e soltar do jeito da toolbox do Visual Studio, do SWING do Java e etc…

  • Alien Binário says:

    Jovem, eu gostaria de saber se eu instalar apenas o kivy e os examples do kivy serve ou tenho que instalar tudo que fala no site.

  • Alien Binário says:

    11Wills, agradeço pelas aulas e tudo mais, pois são bastante didáticas. Eu venho até aqui para te perguntar se tem algum jeito do python ler arquivo .kv pq eu fiz tudo da aula 4 e não abriu pq não reconhece o arquivo .kv. Como posso tá resolvendo isso?

  • f1 says:

    gente antes de aprender kivy tem que ter uma base em orientação a objetos!!!!

  • Luiz Fernando says:

    Olá, quero criar um aplicação em Python muito semelhante a desta pagina >> https://coincheckup.com/coins/bitcoin/markets << e incluir algumas alterações simples (suponho serem simples pq já fiz no Excel), sei que os sites de onde as informações são importadas fornecem a API; Isso é muito complexo??? vc tem algum conteúdo no canal que possa me ajudar???

    Atualmente tenho +- 3 horas por dia livre para isso.

  • Danilo Tertuliano says:

    Tô tentando usar no pycharm e tá dando erro
    [Critical] [App ]Unable to get a Text prodinder, abort.

  • Rogerio Cordeiro says:

    Cara parabéns pela aula, muito boa sua didática, estou iniciando em Python e gostaria de entender melhor o Kyvi, você tem aulas em outras plataformas ou somente no youtube mesmo?

  • Darko Ness says:

    eu nao consigo importar o uix eu fui na videos aulas futuras e baixei os arquivos e percebi que tudo que foi importado de uix nn roda, como os botoes

  • inosível says:

    Quando eu tentei deu esse erro aqui:

    [CRITICAL] [App ] Unable to get a Window, abort.

  • Rafael Batista says:

    SENSACIONAL! Ganhou ainda mais o meu respeito não só pela qualidade do vídeo quanto na excelente escolha do SO com um gerenciador de janelas animal que é o i3wm!

  • Carlos Silvestre says:

    Curso bacana , Parabéns!! Poderia dizer se o Tkinter está descontinuado ?

  • HashLDash says:

    Wow!! Chegamos a 100k Views!! Muito obrigado pessoal! Vejam também as novas séries! Temos muito a aprender juntos! Thanks all! Make sure to check the other series! We've got lots to learn together 🙂 Está com dúvidas? Poste elas no HashForum https://play.google.com/store/apps/details?id=com.crearyx.hashforum&hl=en

  • Luiz Alexandre Torres says:

    ahhhh como é bom audio bem gravado, conteúdo e legenda!!!! só gradece titio

  • wedrano de carvalho says:

    Cara, estou usando o parrot OS, e de jeito nenhum ele encontre o kivy, fala que o modulo é inexistente…

  • Leonardo D. P. Cardoso says:

    will nao consigo instalar o kivy de jeito algum
    sempre da erro na ultima linha de comando e quando tento rodar o codigo sem ela da outro erro
    ja entrei no stackoverflow e nada

  • Lucas Araújo says:

    Que sensacional. Eu virei outra pessoa depois de assistir esse vídeo. Você me mostrou o que é fazer uma template de verdade. Transformador, magnífico, esplêndido, "genioso"… tudo se resume a esse botão. Caramba, perfeito!

  • Alessandro Ganasin says:

    Parabéns! Excelente video.
    Porém estou tendo problemas com a instalação do Kivy.
    Segui as instruções do site do Kivy, tanto o PRECOMPILED WHEELS quanto para o UBUNTU, porém não funciona.
    Procurei na Internet, tentei várias outras coisas mas nada funciona.
    Não dá erro durante a instalação, funciona OK, mas na hora de executar o script dá o seguinte erro:

    Traceback (most recent call last):
    File "s21.py", line 2, in <module>
    from kivy.app import App
    ModuleNotFoundError: No module named 'kivy'

    Não funciona nem pelo terminal, nem pelo PyCharm.
    Poderia me ajudar ?
    S.O. Linux Mint 19.1 / PyCharm 2019.1.3

  • wesley nascimento says:

    Como faço para que o aplicativo envie uma notificação ao usuário, mesmo que a tela esteja desligada no Android?

  • Maicon Jonatha says:

    Obrigado pela legenda!

  • Patrick Oliveira says:

    PROGRAMAÇÃO NAS ESCOLAS
    Respeitosamente pesso lincença ao 11Wills11.
    Ajudem ai é só tres cliques precisamos de 20 mil apoios, nossa comunidade é forte é possivel. Segue o link:

    https://www12.senado.leg.br/ecidadania/visualizacaoideia?id=125390

  • Francisco Ariclecio says:

    No meu windows 7, python 3.7.3, em from kivy.app import App, basta clicar na lampadizinha vermelha e baixar escolher a install kivy, install app.

  • Djheffeson says:

    Não consigo usar, da esse erro: https://pastebin.com/GSsS9n2Z

  • Thiago Oliveira dos santos says:

    o que voce ensina nesse video tambem vale para WINDOWS?

  • Oryonn Araujo says:

    ahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh concegui caraio

  • Carlos Alberto Gonçalves Pereira says:

    – Simplesmente fantástico.
    – Boa didática
    – Boa organização
    – Clareza de pensamento
    – Demonstração prática dos conceitos
    – Parabéns!
    – Acredito que você deveria ser instrutor no udemy.com a começar pelo curso de Kivy que só existe um em português.
    – Muito obrigado!

  • /PADRÃO FIFA/ P.F says:

    como eu faço abrir a tela de programação e instalar o kyvi

Leave a Reply

Your email address will not be published. Required fields are marked *