EXTJS - Comunidade brasileira da biblioteca EXTJS
Setembro 08, 2010, 07:44:01 *
Bem-vindo, Visitante. Por favor faça o Login ou Registro.
Perdeu o seu email de activação?

Login com nome de usuário, senha e duração da sessão
Notícias: Confira também conteúdo Ext JS no novo site rkn.com.br
 
   Home   Ajuda Pesquisa Login Registrar  
Faça uma doação e contribua para a
evolução desta comunidade. Saiba mais...
Páginas: [1]
  Imprimir  
Autor Tópico: FieldGroup - Agrupando campos em uma mesma linha facilmente  (Lida 263 vezes)
0 Membros e 1 Visitante estão vendo este tópico.
oaugustus
Iniciante
*

Karma: +1/-0
Offline Offline

Mensagens: 29


otaviofernandes@pucminas.br
Ver Perfil WWW Email
« : Março 13, 2010, 12:11:15 »

A versão 3.2 de Ext veio com um novo componente muito interessante, o CompositeField, ele permite agrupar campos em uma mesma linha. No entanto algumas vezes, e quero dizer, frequentemente, precisamos agrupar campos em uma mesma linha que não são tão relacionados como (nome e sobrenome) e, nesses casos, o agrupamento de labels do CompositeField não é uma boa idéia.
Eu construí um componente, FieldGroup, que resolve esse problema, de uma maneira bem simples:

Código:
var a = new Ext.form.FormPanel({
  width: 500,
  title: 'FieldGroup',
  autoHeight: true,
  bodyStyle: 'padding:8px',
  items:[
    {
       xtype: 'fieldgroup',
       labelWidth: 30,
       items:[
           {
               xtype: 'textfield',
               fieldLabel: 'Nick',
               flex: 1
           },
           {
               xtype: 'textfield',
               fieldLabel: 'Fullname',
               flex: 2,
               labelWidth: 55
           },
           {
               xtype: 'numberfield',
               fieldLabel: 'Age',
               flex: 1
           }
       ]
    },
    {
       xtype: 'fieldgroup',
       labelWidth: 35,
       items:[
           {
               xtype: 'textfield',
               fieldLabel: 'Best friend name',
               flex: 2,
               labelWidth: 100
           },
           {
               xtype: 'textfield',
               fieldLabel: 'Movie',
               flex: 1
           }
       ]
    }
  ]
});
O código acima gera um formulário como o da imagem em anexo.
Infelizmente há um pequeno problema nas versões anteriores à 3.2 e para o funcionamento nessas versões é preciso informar o heuight dos campos:
Código:
{
    xtype: 'textfield',
    fieldLabel: 'Movie',
    height: 30,
    flex: 1
 }
Sugestões e feedbacks são bem vindos.
« Última modificação: Março 13, 2010, 12:14:07 por oaugustus » Registrado

Otávio Augusto Rodrigues Fernandes
Net On Soluções Tecnológicas Ltda
www.neton.com.br
otavio@neton.com.br
(31) 3075-7868
evertonce
Iniciante
*

Karma: +0/-0
Offline Offline

Mensagens: 9


Ver Perfil Email
« Responder #1 : Julho 29, 2010, 14:14:45 »

Acredito que o fieldLabel saindo com fonte bold ja ficaria bacana
Registrado
Páginas: [1]
  Imprimir  
 
Ir para:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC XHTML 1.0 Válido! CSS Válido!
Página criada em 0.133 segundos com 18 procedimentos.