Thanks to visit codestin.com
Credit goes to pt.scribd.com

0% acharam este documento útil (0 voto)
5 visualizações20 páginas

Comp2 Tkinter Intro

O documento apresenta uma ementa para o curso de Computação II, focando em programação orientada a objetos, tratamento de exceções, manipulação de arquivos e desenvolvimento de interfaces gráficas com Tkinter. Ele detalha conceitos fundamentais como widgets, eventos, event handlers, binding e containers, além de fornecer orientações sobre como programar utilizando Tkinter. Exemplos práticos e a estrutura básica para criar uma interface gráfica em Python também são abordados.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
5 visualizações20 páginas

Comp2 Tkinter Intro

O documento apresenta uma ementa para o curso de Computação II, focando em programação orientada a objetos, tratamento de exceções, manipulação de arquivos e desenvolvimento de interfaces gráficas com Tkinter. Ele detalha conceitos fundamentais como widgets, eventos, event handlers, binding e containers, além de fornecer orientações sobre como programar utilizando Tkinter. Exemplos práticos e a estrutura básica para criar uma interface gráfica em Python também são abordados.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 20

Computação II

MAB 225 - EE2/ET2/ER2

Interface Gráfica - Tkinter


Brunno Goldstein

[email protected]

www.lam.ufrj.br/~bfgoldstein
Ementa

● Programação Orientada a Objetos


● Tratamento de Exceções
● Módulos
● Manipulação de Arquivos
● Interface Gráfica (Tkinter)
● Biblioteca Numérica (Numpy)

2
Ementa

● Programação Orientada a Objetos


● Tratamento de Exceções
● Módulos
● Manipulação de Arquivos
● Interface Gráfica (Tkinter)
● Biblioteca Numérica (Numpy)

3
Conceitos Básicos

GUI - Graphical User Interface

● Interface gráfica;

● Programa que facilita a iteração do usuário com outros


programas;

● Fica em 'loop' infinito:

○ Até o usuário clicar em algum widget da interface;

4
Exemplo de GUI

Exemplo de GUI

5
Tkinter

● Ferramenta em Python para desenvolvimento de GUIs;


● Termos que devemos conhecer:
○ Widget;
○ Event;
○ Event handler;
○ Binding;
○ Container;
○ Pack.

6
Widget

● Qualquer componente da nossa interface gráfica;


● No nosso exemplo nós temos 4 widgets:
○ Janela principal;
○ Campo do texto;
○ Botão "Clique!";
○ Botão "Resetar!".

7
Widget

● Qualquer componente da nossa interface gráfica;


● No nosso exemplo nós temos 4 widgets:
○ Janela principal;
○ Campo do texto;
○ Botão "Clique!";
○ Botão "Resetar!".

8
Widget

● Qualquer componente da nossa interface gráfica;


● No nosso exemplo nós temos 4 widgets:
○ Janela principal;
○ Campo do texto;
○ Botão "Clique!";
○ Botão "Resetar!".

9
Widget

● Qualquer componente da nossa interface gráfica;


● No nosso exemplo nós temos 4 widgets:
○ Janela principal;
○ Campo do texto;
○ Botão "Clique!";
○ Botão "Resetar!".

10
Event

● Interação do usuário com a interface;


● Eventos podem vir de:
○ Clique dos botões do mouse;
○ Pressionar uma ou várias tecla do teclado;
○ Clique em alguma área específica da interface:
■ Ex.: Clicar no botão "Clique!" ou "Resetar";

11
Event Handler

● Função/Método que são executados ao ocorrer um evento;


● No nosso exemplo:
○ Apertar o botão "Clique!" chama função que incrementa o contador;
○ Apertar o botão "Resetar!" chama função que zera o contador;

12
Binding

● Evento precisa saber qual seu event handling;

● Com isso, o evento sabe "o que fazer" quando ocorrer;

● Bind = Ligar/Associar um event a um event handling;

13
Container

● Elementos que dividem nossa interface ;

● Utilizado para dispor os widgets da melhor forma;

● Vamos utilizar o container da classe Frame;

14
Container

Texto
Frame 2
Botão 1
Frame 1
Top-level Top-level
(Top-level)

Frame 3 Botão 23
Frame

Clicou 0 vezes.
Frame 1 Frame 1
(Top-level) Frame
Clique! 3
(Top-level)
Resetar!

15
Pack

● Método dos widgets;


● Indica em que posição o widget irá aparecer no container:
○ Sem parâmetro = TOP
○ Outras opções são LEFT, RIGHT, BOTTOM

Texto
Frame 2
Botão 1
Frame 1
Top-level Top-level
(Top-level)

Frame 3 Frame
Botão 23

16
Como programar?

● Primeiros passos:
○ Importar os módulos Tkinter
○ Instanciar um objeto Tk;
○ Executar método mainloop do objeto.

from Tkinter import *

janela = Tk()
janela.mainloop()

17
Como programar?

● Frames e widgets são representados por classes:


○ Janela/Frame - > Frame
○ Botão - > Button
○ Texto - > Label;
○ Lista -> List;
○ etc

● Parâmetros:
○ Objeto referente ao seu container (frame) pai;
○ Parâmetros específicos do widget:
■ Ex.: Button - > text, color, etc
■ E.: Label -> text, color, height, weight
18
Como programar?

● Criar a interface (basicamente):

○ Instanciar classes (widgets);

○ Setar seus atributos;

○ Criar métodos para eventos (ações dos widgets);

○ Usar o bind e pack;

19
Como programar?

● Vamos aos códigos de exemplo...

20

Você também pode gostar