Você já deve ter visto muitos artigos sobre criação de formulários de cadastro, com herança, com as operações de navegação, incluir, excluir, salvar e cancelar. Em aplicações MDI, os formularios filhos são criados dentro de um formulário pai e podemos abrir varios formulários ao mesmo tempo.
Agora imagine ter no seu formulário pai uma barra de ferramentas com as operações de navegação, incluir, excluir, salvar e cancelar, que controle estas operações nos formulários filhos.
É isto que este artigo se propõe ensinar você a criar uma barra desta.
Abra o Delphi.
Aqui utilizarei a versão 7 do Delphi, nesta versão ao abrir o Delphi, ele já traz uma nova aplicação.
Vamos alterar algumas propriedades de nosso formulário: Name para FrmPai e FormStyle para fsMDIForm, WindowState para wsMaximized.
Coloque no formulário um componente ImageList da palheta Win32.
De um duplo-clique sobre o ImageList e clique no botão Add, as imagens no Delphi ficam no seguinte caminho: C:\Arquivos de programas ou Program Files\Arquivos comuns ou Common Files\Borland Shared\Images\Buttons. Selecione o arquivo de imagem DOCSINGL e clique em Abrir, Ao ser questionado se deseja separar o Bitmap em 2, clique em Yes. Será inserido uma segunda imagem, mais apagada, selecione-a e clique em Delete.
Repita o procedimento adicionando os arquivos de imagem: FLOPPY, TRASH e UNDO, ARROW1U, ARROW1D, ARROW1L e ARROW1R respectivamente, veja a imagem abaixo:
Coloque no formulário um componente ActionList da palheta Standard. Altere sua propriedade Image para ImLst e Name para ActLst.
De um duplo-clique sobre o ActionList, será aberta a janela Editing FrmPai.ActLst, Na parte superior da janela há um botão com uma seta, clique na seta e depois em New Standard Action ou tecle Ctrl + Ins. Será aberta a janela Standard Action Classes, role a barra de rolagem até aparecer a classe Dataset. Mantenha a tecla Ctrl pressionada e clique em TDataSetFirst, depois em TDataSetPrior, depois em TDataSetNext, depois em TDataSetLast, depois em TDatasetInsert, depois em TDatasetDelete, depois em TDatasetPost e por último clique em TDatasetCancel, para encerrar clique em OK.
Será exibida novamente a janela Editing FrmPai.ActLst, mas note que agora em Categories temos a categoria Dataset, clique sobre ela, em Actions é exibido as oito Ações que selecionamos, o que temos de fazer agora é personalizar cada uma destas ações. Selecione a acão DataSetFirst1 e vamos alterar algumas propriedades:
Caption: F2 Primeiro
Selecione a acão DataSetPrior1 e vamos alterar algumas propriedades:
Selecione a acão DataSetNext1 e vamos alterar algumas propriedades:
Selecione a acão DataSetLast1 e vamos alterar algumas propriedades:
Selecione a acão DatasetInsert1 e vamos alterar algumas propriedades:
Selecione a acão DataSetDelete1 e vamos alterar algumas propriedades:
Selecione a acão DataSetPost1 e vamos alterar algumas propriedades:
Selecione a acão DataSetCancel1 e vamos alterar algumas propriedades:
Após as configurações a janela Editing FrmPai.ActLst, deve estar como a figura abaixo:
Coloque no formulário um componente MainMenu da palheta Standard. Altere sua propriedade Name para MmPai.
De um duplo-clique sobre o MmPai, será aberta a janela FrmPai.MmPai.
Na propriedade Caption digite &Cadastro e tecle Enter.
Na janela FrmPai.MmPai, clique em Cadastro e tecle seta para baixo, Na propriedade Caption digite &Clientes e tecle Enter.
Feche a anela FrmPai.MmPai.
Coloque no formulário um componente ToolBar da palheta Win32.
Altere a propriedade Name para TlbPai, Flat para True, Autosize para True, Images para ImLst e ShowCaptions para True.
Clique com o botão direito do mouse sobre a ToolBar e no menu de contexto clique em New Button, repita mais três vezes esta operação.
Clique com o botão direito do mouse sobre a ToolBar e no menu de contexto clique em New Separator.
Clique com o botão direito do mouse sobre a ToolBar e no menu de contexto clique em New Button, repita mais três vezes esta operação.
Selecione o primeiro botão e altere as seguintes propriedades:
Selecione o segundo botão e altere as seguintes propriedades:
Selecione o terceiro botão e altere as seguintes propriedades:
Selecione o quarto botão e altere as seguintes propriedades:
Selecione o quinto botão que é o separador e altere as seguintes propriedades:
Selecione o sexto botão e altere as seguintes propriedades:
Selecione o sétimo botão e altere as seguintes propriedades:
Selecione o oitavo botão e altere as seguintes propriedades:
Selecione o nono botão e altere as seguintes propriedades:
Sua tela deve estar como a figura abaixo:
Clique em File/New/Form.
Altere a propriedade Name para FrmClientes, Caption para Clientes e FormStyle para fsMDIChild, salve este formulário como Uclientes.
Coloque no formulário um componente ClientDataSet da palheta Data Access e altere sua propriedade Name para CdsClientes. De um clique na propriedade FieldDefs e outro clique nas reticências ao lado da propriedade. Será aberta a janela Editing CdsClientes. FieldDefs, clique duas vezes no botão Add New na parte superior da janela.
Selecione cdsClientesField1 e altere as seguintes propriedades:
Selecione cdsClientesField2 e altere as seguintes propriedades:
Feche a janela Editing CdsClientes. FieldDefs. Clique com o botão direito do mouse sobre o ClientDataSet e depois em Create Dataset.
Clique novamente com o botão direito do mouse sobre o ClientDataSet e depois em Fields Editor...
Clique com o botão direito do mouse sobre o Fields Editor e depois em Add all fields.
Mantendo a tecla Shift pressionada, clique sobre os campos id e nome, ambos ficaram selecionados, arraste os dois campos para o formulário.
Ajeite os componentes para que fique parecido com a figura abaixo:
Volte ao formulário pai e clique em Project → Options, na janela que se abriu, clique na guia Forms e mova FrmClientes da lista Auto-create forms para a lista Available forms e clique em OK.
Clique em File → Use Unit, selecione Uclientes e clique em OK.
No formulário pai, clique no menu cadastro que criamos e em seguida clique em Clientes, digite o seguinte código:
Salve tudo e tecle F9. Você deverá obter uma tela como a abaixo, ao clicar em Cadastro → Clientes: