Tekki
|
UBERLÂNDIA MG - BRASIL
|
|
Postada em 25/06/2005 10:41 hs
Bom dia amigos, gostaria de saber quais as vantagens de se usar o MDI Form? Acredito que a maioria de nós não o usamos, já fiz alguns testes gostei de algumas coisas e de outras não. O que gostaria neste poste seria de algum comentário de que usa o MDI. Estou querendo usar o MDI para trabalhar com a propriedade MDIChild dos forms.
|
|
|
|
|
|
|
|
Postada em 25/06/2005 15:37 hs
Tekki Realmente muitos programadores nao utilizam formularios MDI... eu os uso desde o meu primeiro projeto... vou citar pra vc algumas vantagens que eu vejo em usar MDIs... depois alguem pode complementar... Vc centraliza recursos em suas aplicações. Tipo uma barra de menus ou de botoes... colocando elas no MDI, vc pode usar o clique em um menu para abrir um formulario sem ter necessariamente fechado outro antes... isso se tratando de forms MDIChilds, é claro... ou entao vc pode ter varios formularios abertos, e reunir todos os botoes de controle no MDI.. por exemplo imagine um cadastro de Clientes, um de Produtos, um de Fornecedores e um de Funcionarios... seria necessario ter em cada tela os botoes "Primeiro", "Anterior", "Proximo", "Ultimo", "Novo", "Alterar", "Excluir", "Cancelar Alteracoes", "Salvar Alteracoes", "Localizar", etc... vc pode colocar todos esses botoes no MDI, e programar para que ele reconheça qual é o form Child ativo, e executar as ações nele... Na minha opiniao a programacao fica mais limpa... A facilidade para o usuario.. em um MDI, ele vai ter a sençaçao de estar em um dos programas que ja conheçe, como o Word ou o Navegador de Internet... reunindo todos os menus e botoes em unico local, é mais facil para o usuario se localizar e aprender a usar seu programa... alem de vc ter apenas um botao na barra de tarefas do windows para sua aplicacao, e os forms Childs minimizados ficarem dentro do proprio MDI, facilitando o usuario encontrar o form q ele quer abrir... ele tambem pode ir no menu e selecionar novamente a opcao de abrir o form, q ele sera simplesmente restaurado, se ja estiver minimizado, ou sob outro (se vc programar isso, é claro...) Existem muitos outros recursos, como por exemplo usar todo o desktop do usuario independente da resolucao de tela dele, sem ter que ficar fazendo um form para cada resolucao (como eu ja fiz uma vez...) O MDI oferece uma interface de fundo para sua aplicaçao, vc pode colocar uma cor, ou a logo da empresa q comprou o software... Tekki, espero ter dado alguns motivos convincentes... existem muitos outros motivos para se usar um MDI, esses sao os mais faceis de se ver... no final, vc deve sempre optar pelo q parecer mais agradavel ao seu usuario... se ele gostar, vc usa, senao volta pros forms de sempre... Flw!
Elieser Carlos Topassi Analista de Sistemas - Desenvolvedor VB/ASP/.Net
e-mail/msn: elieser_topassi@yahoo.com.br
São José do Rio Preto,SP - Brasil _____________________________________________________
"O caminho do tolo aos seus prórios olhos lhe parece reto, mas o sábio ouve conselhos" (Pv 12:15)
|
|
|
|
Tekki
|
UBERLÂNDIA MG - BRASIL
|
|
Postada em 27/06/2005 17:00 hs
Elieser Topassi obrigado pela atenção. É pelos motivos que você citou que pretendo usar o MDI, estes motivos eu já havia percebido. Já criei uma barra de meu padrão para todos os forms, já fiz a programação para as janelas ficarem lado a lado, casata... Acho mesmo que vou desenvolver este sistema como o MDI form e utilizar o MDIChild nos demais. Mais uma vez obrigado pela atenção.
|
|
|
|
Rochª
|
RIO DE JANEIRO RJ - BRASIL
|
|
Postada em 28/06/2005 08:53 hs
Uma barra unica com os botoes de incluir, excluir e etc. Ja vi em sistemas e ja imaginei como seria mais nunca coloquei em pratica. Da para falar como voces fizeram. Não estou querendo boa vida  so uma ideia para ver se o que pensei esta errado ou muito ruim. Eu pensei em passar o objeto que manipula o arquivo para a rotina do botao no MDI e ela executar. Pois todos tem o mesmo nome (ob_cliente.Incluir ob_fornecedor.Incluir) e assim faria OBJ.INCLUIR (OBJ seria o objeto recebido). Nao sei se iria funcionar e quais os outros problemas, mais seria esse o basico.
__________________________________________________________________________ Qualquer coisa post Rochª
|
|
|
|
|
|
Postada em 28/06/2005 14:37 hs
Rocha, Eu nao faço assim... primeiro q nao uso objetos pra manipular dados... uso o codigo no proprio form... eh mais rapido pra programar pra dar manutenção... alem do mais, nao uso recordsets, somente o SQL na conexao do ADO... assim fica dificil implementar esse tipo de programação com objetos de acesso aos dados... Bem, mas independente disso, eu programo no click do botao (ou item de menu) no form algo semelhante a Me.ActiveForm.Incluir ou Me.ActiveForm.Salvar, e programo essas rotinas em todos os forms que irao utiliza-las... assim o codigo fica todo no propiro form, e no MDI somente a chamada... Alem disso, como ha forms q nao terao essas funcoes (forms q nao sao de cadastro), eu uso uma flag no sistema, onde determino o tipo de form q estou usando, e qdo um form eh aberto no MDI, eu verifico a flag pra ver quais botoes e itens de menu vou deixar visiveis... Essa flag eu altero no evento Activate do form MDIChild, pois assim ela sempre vai seguir o form ativo... e para evitar q ela fique com valor errado qdo o ultimo form for minimizado ou fechado, no Deactivate do form eu limpo o valor dela... Espero q isso te ajude... abraços e boa sorte com MDIs... sao muito bons pra quem sabe usar, mas se mal programados costumam dar muita dor de cabeça... Flw!
Elieser Carlos Topassi Analista de Sistemas - Desenvolvedor VB/ASP/.Net
e-mail/msn: elieser_topassi@yahoo.com.br
São José do Rio Preto,SP - Brasil _____________________________________________________
"O caminho do tolo aos seus prórios olhos lhe parece reto, mas o sábio ouve conselhos" (Pv 12:15)
|
|
|
|
|