Cada linha contém uma caixa horizontal (hbox) com vários botões. A chamada para embalar é uma cópia do convite para embalar cada um dos botões na
Hbox . Cada botão é embalado em hbox da mesma maneira (com os mesmos argumentos para o método pack_start ()). Este é um exemplo do método pack_start () de:
box.pack_start (criança, expandir, fill, padding)
box é a caixa onde o objeto está embalado. O primeiro argumento, child , é o objeto a ser embalado. Por enquanto os objetos são botões, o que seria de embalagem em caixas de botões. O argumento de
expand a pack_start () e pack_end
() controla se os controles tem que preencher todo o espaço extra no
caixa e, portanto, ele se expande para preencher todo reservado para ela
(área TRUE ); ou se encolhe para apenas ajustar os controles ( FALSE ). Definir expandir para FALSE pode justificar aos controles esquerda e direita. Caso contrário, eles vão expandir-se para encher a caixa, e o mesmo efeito pode ser obtido utilizando apenas ou pack_start () ou pack_end (). O argumento
fill de controle se o espaço extra é usado nos próprios objetos ( TRUE ) ou espaço como extra no caixa em torno desses objetos ( FALSE ). Só tem um efeito se o argumento expandir também é TRUE . Python permite que você defina um método ou função com argumentos padrão e argumentos nomeados. Ao longo deste tutorial que define as funções e os métodos com os padrões e argumentos nomeados vão ver quando eles se aplicam. Por exemplo, o método
pack_start é definido como: box.pack_start (child,expand= gtk.TRUE,fill= gtk.TRUE,padding= 0) box.pack_end (child,expand= gtk.TRUE,fill= gtk.TRUE,padding= 0)
child , expand , fill e padding são palavras-chave (argumentos nomeados). Argumentos expand , fill e padding são os padrões (ou "default") mostradas acima. O argumento child deve, necessariamente, ser especificado por não ter um valor padrão. As funções que nos permitem criar uma nova caixa são:
hbox = gtk.HBox (O argumentohomogeneous= gtk.FALSE,spacing= 0) vbox = gtk.VBox (homogeneous= gtk.FALSE,spacing= 0)
homogeneous de gtk.HBox () e gtk.VBox () controla se cada caixa é objecto do mesmo tamanho (por exemplo, a mesma largura de um hbox, ou a mesma altura numa vbox). Se for utilizado, as rotinas do pacote funcionar essencialmente como se o argumento expandir estava sempre ligado. Qual é a diferença entre o
spacing (está definido para criar a caixa) e padding (determinado quando os elementos são embalados)? O spacing entre objectos é adicionado, e padding é adicionado a cada um dos lados de um objecto. A Figura 4.2, "Embalagem com espaçamento e Padding" ilustra a diferença; passar um argumento de 2 a packbox.py : A Figura 4.3, "empacotado com pack_end ()" ilustra o uso do método
pack_end () (passar um argumento de 3 a packbox.py ). O rótulo de "final" é embalado com o método pack_end (). Permanecerá na borda direita da janela quando ela é redimensionada.
Nenhum comentário:
Postar um comentário