A Linguagem Python
Por: Rickzin Leal • 19/10/2021 • Exam • 384 Palavras (2 Páginas) • 108 Visualizações
1 Gerenciador de Janelas
A abreviação GUI, do inglês, graphical user interface, é uma interface permite aos usuários interagir com
computadores. A forma mais comum de GUI são “janelas” que podem ser minimizadas, maximizadas
ou redimensionadas na tela do computador, tornando possível a exibição de várias janelas ao mesmo na
tela do computador.
Esse trabalho prático consiste em desenvolver um programa gerenciador de janelas para uma tela no
formato de uma grade retangular, que comporta uma quantidade fixa de caracteres. O programa deve
então exibir a tela resultante quando uma ou mais janelas são criadas.
A tela possui largura e altura fixas e inicia vazia, ou seja cada caractere na tela é um espaço em
branco (“ ” ou valor ASCII 32). A seguir serão criadas janelas em uma determinada ordem, onde as
janelas mais recentes sobrepõe as primeiras janelas cridas. Uma janela consiste em um quadro e um
caractere de preenchimento, mostrados abaixo:
Nesse exemplo, os cantos do quadro são “+”, a parte superior e inferior são “-”, a esquerda e a direita
são “|” e o interior da janela é preenchido com algum caractere (nesse exemplo “X”). Cada elemento
da janela terá o seu formato identificado pelas variáveis "tlv tlh vs hs fill" separadas por um único
espaço, onde cada variável tem a seguinte representação:
• tlv e tlh representam respectivamente os deslocamentos verticais e horizontais da parte superior
esquerda da tela. Um valor positivo para deslocamento vertical leva a janela para baixo na tela,
enquanto um valor positivo para deslocamento horizontal leva a janela para a direita.
• vs e hs representam os tamanhos vertical e horizontal da janela.
• fill representa o caractere que preenche janela.
Observe que se vs, hs ou ambos forem iguais a 2, o caractere de preenchimento não aparecerá porque
o quadro ocupa todo o espaço alocado para a janela. Observe também que se o exemplo anterior
representasse a totalidade da tela, a janela mostrada seria representada pela string “0 0 4 6 X” (aspas
para maior clareza).
O gerenciador de janelas deve funcionar para multiplas janelas na tela. Se for criada uma janela
que sobrepõe outra janela, a janela mais recente aparecerá sobre a janela anterior. Em outras palavras,
qualquer parte da janela criada anteriormente que cruze uma janela criada posteriormente fica oculta.
As janelas também podem ficar parcialmente ou completamente
...