Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Sistema de Abas(Notebook) no meio da tela, e não acima. Bom dia à todos, sou novo no framework adianti, e gostei bastante da opção de abas e tal, porém eu queria colocar esse esquema de abas no meio da tela do form, por exemplo, cadastro de produto acima, e abaixo seria as abas de variedades e características por exemplo. Alguém tem algum exemplo, ou no tutor, onde eu possa ver como fazer isso? Desde já agradeço....
F
Sistema de Abas(Notebook) no meio da tela, e não acima.  
Bom dia à todos, sou novo no framework adianti, e gostei bastante da opção de abas e tal, porém eu queria colocar esse esquema de abas no meio da tela do form, por exemplo, cadastro de produto acima, e abaixo seria as abas de variedades e características por exemplo.
Alguém tem algum exemplo, ou no tutor, onde eu possa ver como fazer isso?

Desde já agradeço.

Pacotão Dominando o Adianti Framework 7
O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado! Versão 7.4


Dominando o Adianti 7 Quero me inscrever agora!

Comentários (8)


NR

Depende de qual classe de formulário você está usando. Se for com o bootstrapFormBuilder basta criar o notebook separadamente e adicioná-lo ao form com a função addContent.

Nesse link tem um exemplo de como criar o notebook:
adianti.com.br/framework_files/tutor/index.php?class=ContainerNotebo

Nesse outro como usar a função addContent:
adianti.com.br/framework_files/tutor/index.php?class=FormBuilderView
F

Boa tarde Nataniel, sim estou usando o bootstrapFormBuilder, estava tentando exatamente desta forma que você falou. Mas ai o notebook sempre é colocado em cima da tela, e eu precisava que o formulário ficasse fixo em cima e apenas embaixo dele viria a parte de variedades e características com as colunas para o cliente adicionar e tal.
NR

A função addContent deve respeitar a ordem com que os componentes foram adicionados. Então, se acima você tiver adicionado outros campos, o notebook virá depois deles. Ex:
  1. <?php
  2. $this->form = new BootstrapFormBuilder('formteste');
  3. $this->form->addFields([new TLabel('Campo 1')],[new TEntry('campo1')]);
  4. $this->form->addFields([new TLabel('Campo 2')],[new TEntry('campo2')]);
  5. $this->form->addFields([new TLabel('Campo 3')],[new TEntry('campo3')]);
  6. $notebook = new BootstrapNotebookWrapper( new TNotebook(400,230) );
  7.         
  8. // adds two pages in the notebook
  9. $notebook->appendPage('Aba 1', new TEntry('aba1'));
  10. $notebook->appendPage('Aba 2', new TEntry('aba2'));
  11. $this->form->addContent([$notebook]);
  12. ?>
F

Nataniel, dá uma olhadinha se estou fazendo algo errado, pois ele está colocando o notebook aonde quero e tal, porém não está colocando os códigos necessários dentro.
$notebook->appendPage('Aba 1', new TEntry('aba1')); <<O que eu devia colocar dentro dessa variavel no TEntry?


  1. <?php
  2. $this->form = new BootstrapFormBuilder('form_TNomeProd');
  3.         $cod_nome_prod = new TEntry('cod_nome_prod');
  4.         $desc_nome = new TEntry('desc_nome');
  5.         $row $this->form->addFields( [ new TLabel('ID') ], [ $cod_nome_prod ], [ new TLabel('Nome') ], [ $desc_nome ] );
  6.        /***************************/
  7.         $notebook = new BootstrapNotebookWrapper( new TNotebook(400,230) );
  8.         $notebook->appendPage('Variedades', new TEntry('variedades'));
  9.         $this->form->addContent([$notebook]);
  10.         $var_item_var_cod_varied = new TEntry('var_item_var_cod_varied');
  11.         $var_item_var_desc_varied = new TEntry('var_item_var_desc_varied');
  12.         $this->form->addContent([ new TFormSeparator('Variedades''#333333''18''#eeeeee')]);
  13.         $this->form->addFields( [ new TLabel('ID') ], [ $var_item_var_cod_varied ],[ new TLabel('Nome')],[$var_item_var_desc_varied] );
  14.         
  15.         $this->form->addFields( [ new TLabel('') ] );
  16.         $add_var_item_var = new TButton('add_var_item_var');
  17.         $action_var_item_var = new TAction(array($this'onAddVarItemVar'));
  18.         $add_var_item_var->setAction($action_var_item_var'Adicionar/Alterar');
  19.         $add_var_item_var->addStyleClass('btn-success');
  20.         $add_var_item_var->setImage('fa:save');
  21.         $this->form->addFields([$add_var_item_var]);
  22.         $this->var_item_var_list = new BootstrapDatagridWrapper(new TQuickGrid);
  23.         $this->var_item_var_list->style 'width:100%';
  24.         $this->var_item_var_list->disableDefaultClick();
  25.         $this->var_item_var_list->addQuickColumn('Editar''edit''center'20);
  26.         $this->var_item_var_list->addQuickColumn('Deletar''delete''center'20);
  27.         $column_var_item_var_cod_varied $this->var_item_var_list->addQuickColumn('ID''var_item_var_cod_varied''left');
  28.         $column_var_item_var_desc_varied $this->var_item_var_list->addQuickColumn('Nome''var_item_var_desc_varied''center');
  29.         $this->var_item_var_list->createModel();
  30.         $this->form->addContent([$this->var_item_var_list]);
  31. ?>


Muito obrigado novamente.
Att Felipe.
NR

Felipe, quando o notebook é criado manualmente é necessário adicionar os componentes diretamente nele, e não mais usando a função addFields da classe BootstrapFormBuilder.
Ex:
  1. <?php
  2. ...
  3. $notebook = new BootstrapNotebookWrapper( new TNotebook(400,230) );
  4. $tableVariedades = new TTable();
  5. ...
  6. // chamar a função appendPage para cada aba a ser criada. O segundo parâmetro corresponde ao container(TTable,TFrame,TPanel) a ser exibido na aba
  7. $notebook->appendPage('Variedades'$tableVariedades);
  8. ...
  9. // adicao do notebook ao formulario
  10. $this->form->addContent([$notebook]);
  11. ...
  12. $var_item_var_cod_varied = new TEntry('var_item_var_cod_varied');
  13. $var_item_var_desc_varied = new TEntry('var_item_var_desc_varied');
  14. // adicionar conteudo no container da aba Variedades
  15. $tableVariedades->addRowSet( new TLabel('ID'),$var_item_var_cod_varied,new TLabel('Nome'),$var_item_var_desc_varied);
  16. ?>

adianti.com.br/framework_files/tutor/index.php?class=ContainerNotebo
F

Obrigado Nataniel, tens me ajudado muito!
Mas e com essa parte, como farei? Não ficou muito claro lá no adianti tutor.

  1. <?php
  2.         $add_var_item_var = new TButton('add_var_item_var');
  3.         $action_var_item_var = new TAction(array($this'onAddVarItemVar'));
  4.         $add_var_item_var->setAction($action_var_item_var'Adicionar/Alterar');
  5.         $add_var_item_var->addStyleClass('btn-success');
  6.         $add_var_item_var->setImage('fa:save');
  7.         $this->form->addFields([$add_var_item_var]);
  8.         $this->var_item_var_list = new BootstrapDatagridWrapper(new TQuickGrid);
  9.         $this->var_item_var_list->style 'width:100%';
  10.         $this->var_item_var_list->disableDefaultClick();
  11.         $this->var_item_var_list->addQuickColumn('Editar''edit''center'20);
  12.         $this->var_item_var_list->addQuickColumn('Deletar''delete''center'20);
  13.         $column_var_item_var_cod_varied $this->var_item_var_list->addQuickColumn('ID''var_item_var_cod_varied''left');
  14.         $column_var_item_var_desc_varied $this->var_item_var_list->addQuickColumn('Nome''var_item_var_desc_varied''center');
  15.         $column_var_item_var_sigla_trans $this->var_item_var_list->addQuickColumn('S Trans.''var_item_var_sigla_trans''center');
  16.         $column_var_item_var_dias_ciclo $this->var_item_var_list->addQuickColumn('Ciclo(dias)''var_item_var_dias_ciclo''center');
  17.         $column_var_item_var_ciclo $this->var_item_var_list->addQuickColumn('Ciclo''var_item_var_ciclo''center');
  18.         $column_var_item_var_status $this->var_item_var_list->addQuickColumn('Status''var_item_var_status''center');
  19.         $column_var_item_var_ciclo->setTransformer(array('AppTransformer''TransfTipoCicloNomeProd'));
  20.         $column_var_item_var_status->setTransformer(array('AppTransformer''TransfStatusAI'));
  21.         $this->var_item_var_list->createModel();
  22.         $this->form->addContent([$this->var_item_var_list]);
  23. ?>
NR

Não sei se entendi. Você quer adicionar a grid também ao notebook? Se for isso tem que adicioná-la ao container que está no notebook($tableVariedades no exemplo que passsei) e não ao formulário diretamente. Veja a parte de contêineres do tutor pra entender um pouco mais.
adianti.com.br/framework_files/tutor/index.php?class=HomeView&me
F

Então, é que essa parte de variedades e características, eu vou mostrar somente dentro do formulário, na lista não vai aparecer e tal.
Ai então, teria que ter as colunas e tal, para mostrar.
Lembrando que seguindo basicamente aquela parte ali de cima já, ai após o form teria esse botão de add o item, e as colunas e tal.

  1. <?php
  2.         $add_var_item_var = new TButton('add_var_item_var');
  3.         $action_var_item_var = new TAction(array($this'onAddVarItemVar'));
  4.         $add_var_item_var->setAction($action_var_item_var'Adicionar/Alterar');
  5.         $add_var_item_var->addStyleClass('btn-success');
  6.         $add_var_item_var->setImage('fa:save');
  7.         $this->form->addFields([$add_var_item_var]);
  8.         $this->var_item_var_list = new BootstrapDatagridWrapper(new TQuickGrid);
  9.         $this->var_item_var_list->style 'width:100%';
  10.         $this->var_item_var_list->disableDefaultClick();
  11.         $this->var_item_var_list->addQuickColumn('Editar''edit''center'20);
  12.         $this->var_item_var_list->addQuickColumn('Deletar''delete''center'20);
  13.         $column_var_item_var_cod_varied $this->var_item_var_list->addQuickColumn('ID''var_item_var_cod_varied''left');
  14.         $column_var_item_var_desc_varied $this->var_item_var_list->addQuickColumn('Nome''var_item_var_desc_varied''center');
  15.   
  16.         $this->var_item_var_list->createModel();
  17.         $this->form->addContent([$this->var_item_var_list]);
  18. ?>