[OFF] Por que os aplicativos MDI ainda sobrevivem?
Por que muitos desenvolvedores utilizam aplicativos MDI? Eles são melhores? O Windows não utiliza mais nada que seja MDI, utiliza? Ano passado, estive em um evento da Microsoft e o palestrante, um australiano, disse que não entendia o motivo das pessoas ainda desenvolverem aplicativos MDI.
Rjun
Curtidas 1
Respostas
Massuda
09/09/2005
Minha opinião...
A maior parte dos usos é um erro de concepção: como nos aplicativos MDI existe o conceito explícito de form pai e form filho, muitos subentendem que se precisam ter mais de um form, o aplicativo tem de ser MDI.
Um exemplo de abuso do conceito de MDI é forçar ter apenas um form filho de cada classe e esse form filho ocupar toda a área cliente do form pai. Isso pode ser facilmente feito com em um aplicativo SDI.
Outra coisa que parece atrair alguns para os aplicativos MDI é o fato dos forms filhos ficarem restritos à área cliente do form pai. Não sei porque isso atrai as pessoas, mas nem o próprio Delphi funciona assim.
Um modelo de aplicativo que acho interessante é o usado pelo Outlook. Não é complicado de fazer e organiza relativamente bem as tarefas para o usuário.
A maior parte dos usos é um erro de concepção: como nos aplicativos MDI existe o conceito explícito de form pai e form filho, muitos subentendem que se precisam ter mais de um form, o aplicativo tem de ser MDI.
Um exemplo de abuso do conceito de MDI é forçar ter apenas um form filho de cada classe e esse form filho ocupar toda a área cliente do form pai. Isso pode ser facilmente feito com em um aplicativo SDI.
Outra coisa que parece atrair alguns para os aplicativos MDI é o fato dos forms filhos ficarem restritos à área cliente do form pai. Não sei porque isso atrai as pessoas, mas nem o próprio Delphi funciona assim.
Um modelo de aplicativo que acho interessante é o usado pelo Outlook. Não é complicado de fazer e organiza relativamente bem as tarefas para o usuário.
GOSTEI 0
Rjun
09/09/2005
Quando vejo aplicativos MDI, parece que faço uma viagem no tempo. No tempo do Windows 3.1.
Sem dúvida, o modelo do Outlook é muitissimo interessante, tanto que é o modelo que estou utilizando para meus aplicativos.
Sem dúvida, o modelo do Outlook é muitissimo interessante, tanto que é o modelo que estou utilizando para meus aplicativos.
GOSTEI 0
Massuda
09/09/2005
Quando vejo aplicativos MDI, parece que faço uma viagem no tempo. No tempo do Windows 3.1.
Acho que os programas do tipo Photoshop ainda usam uma interface MDI, mas posso estar enganado.GOSTEI 0
Ipc$
09/09/2005
Realmente as aplicações MDI além de poluirem, bitolam e escravizam o programador.
GOSTEI 0
Martins
09/09/2005
[quote:f44e64013b=´Rjun´]Quando vejo aplicativos MDI, parece que faço uma viagem no tempo. No tempo do Windows 3.1.
Acho que os programas do tipo Photoshop ainda usam uma interface MDI, mas posso estar enganado.[/quote:f44e64013b]Concordo com vcs e espero q os comentários aumentem e mantenham um nível técnico sobre o assunto, pq hj podemos ver q nem os aplicativos office utilizam esse tipo de form, o [b:f44e64013b]Rjun[/b:f44e64013b] tem razão quando fala q olhar esses aplicativos é como regredir uns anos, eu particularmente ha um bom tempo não utilizo esses forms e q me lembre utilizei bem poucos.
GOSTEI 0
Eniorm
09/09/2005
eu acho vantagem em projetos MDI por poder abrir mais de uma janela ao mesmo tempo, acho isso muito bom...... num projeto meu aqui, eu tenho q fechar um form para se abrir outro, caso tenha q fazer um serviço diferente do que esteja fazendo no momento.
Não acho que projetos MDI sejam feios ou que lembrem win311 ou sei lá oq, eu acho muito mais interessante, na minha opinião eheheheh.... meu novo projeto usará tudo em MDI e para isso faço uma ou 2 linhas a mais pra controlar e evitar que o mesmo form seja aberto mais de uma vez.....
agora... tecnicamente falando, vcs poderiam me dizer sobre prossiveis desvantagens do uso de MDI ???
Abraço,
Não acho que projetos MDI sejam feios ou que lembrem win311 ou sei lá oq, eu acho muito mais interessante, na minha opinião eheheheh.... meu novo projeto usará tudo em MDI e para isso faço uma ou 2 linhas a mais pra controlar e evitar que o mesmo form seja aberto mais de uma vez.....
agora... tecnicamente falando, vcs poderiam me dizer sobre prossiveis desvantagens do uso de MDI ???
Abraço,
GOSTEI 0
Ipc$
09/09/2005
Bom, pelas aplicações MDI que ví, notei:
1-As MDIChilds ficam restritas à área do Form pai e não à área do Windows.
2-Dá a impressão de uma aplicação limitada; ou seja; o escopo de sua aplicação fica totalmente dentro da janela pai.
3-As Childs não fecham, para poder fechá-las, ou vc dá um Free e perde tudo; ou tem que mudar o FormStyle p/ fsNormal e dar um Hide ocorrendo um flicker indesejado e no Show elas não voltam na posição anterior.
Tecnicamente não posso opinar pq faz tempo que não utilizo MDI, mas a maior desvantagem que vejo está no ítem 2.
1-As MDIChilds ficam restritas à área do Form pai e não à área do Windows.
2-Dá a impressão de uma aplicação limitada; ou seja; o escopo de sua aplicação fica totalmente dentro da janela pai.
3-As Childs não fecham, para poder fechá-las, ou vc dá um Free e perde tudo; ou tem que mudar o FormStyle p/ fsNormal e dar um Hide ocorrendo um flicker indesejado e no Show elas não voltam na posição anterior.
Tecnicamente não posso opinar pq faz tempo que não utilizo MDI, mas a maior desvantagem que vejo está no ítem 2.
GOSTEI 0
Titanius
09/09/2005
Bem, eis minha opinião:
A um tempo atrás, eu usava muito o MDI, quando eu mexia com Paradox, pois bem, acha um máximo poder abrir umas 4 janelas ao mesmo tempo, e poder mudar de um lado para o outro. Mas depois, comecei a mexer com Firebird e afins, então mesmo que eu altera algum dado em uma tela, na outra tela teria que pegar os novos dados, e trabalhar com mais de 1 tela é muito difícil, levando em consideração que mais da metade dos usuários possuem um monitor de 15´´, então fica impossível trabalhar com mais de duas telas ao mesmo tempo, nem eu com meu de 17´´ não consigo. :D.
Bem, estou pensando em mudar a forma dos meus sistemas, algo parecido com o Protheus da Microsiga, não sei o que eles usam, se é frame e tals... mais não me parece MDI, pelo menos da versão 7.
Então é isso, alguma das vantagens que eu via antes no MDI, não as vejo no momento, mas contra o amigo que falou acima, eu prefiro limpar o form da memoria, não sei se é melhor ou é costume, mas é isso... acho este tópico interessante para discutirmos..
[]s
A um tempo atrás, eu usava muito o MDI, quando eu mexia com Paradox, pois bem, acha um máximo poder abrir umas 4 janelas ao mesmo tempo, e poder mudar de um lado para o outro. Mas depois, comecei a mexer com Firebird e afins, então mesmo que eu altera algum dado em uma tela, na outra tela teria que pegar os novos dados, e trabalhar com mais de 1 tela é muito difícil, levando em consideração que mais da metade dos usuários possuem um monitor de 15´´, então fica impossível trabalhar com mais de duas telas ao mesmo tempo, nem eu com meu de 17´´ não consigo. :D.
Bem, estou pensando em mudar a forma dos meus sistemas, algo parecido com o Protheus da Microsiga, não sei o que eles usam, se é frame e tals... mais não me parece MDI, pelo menos da versão 7.
Então é isso, alguma das vantagens que eu via antes no MDI, não as vejo no momento, mas contra o amigo que falou acima, eu prefiro limpar o form da memoria, não sei se é melhor ou é costume, mas é isso... acho este tópico interessante para discutirmos..
[]s
GOSTEI 0
Bon Jovi
09/09/2005
[quote:267f78b32a=´Enio Marconcini´]eu acho vantagem em projetos MDI por poder abrir mais de uma janela ao mesmo tempo, acho isso muito bom[/quote:267f78b32a]
No estilo normal tb é assim, como já citaram o próprio Delphi.
[quote:267f78b32a=´Enio Marconcini´]´Não acho que projetos MDI sejam feios ou que lembrem win311 ou sei lá oq´[/quote:267f78b32a]
Tb não acho, existem muitos aplicativos no mercado atual usando MDI, como o Dreamweaver por exemplo, mas que ao mesmo tempo não usa secamente o MDI, tendo muitas facilidades como uma delas o uso de abas pra simular o CTRL+TAB, tornando mais direto o acesso às janelas abertas.
Acho que tudo depende do caso e as vezes gosto do cliente. Mas sobre preferência geral, gosto muito do estilo normal com uso de DockSite.
No estilo normal tb é assim, como já citaram o próprio Delphi.
[quote:267f78b32a=´Enio Marconcini´]´Não acho que projetos MDI sejam feios ou que lembrem win311 ou sei lá oq´[/quote:267f78b32a]
Tb não acho, existem muitos aplicativos no mercado atual usando MDI, como o Dreamweaver por exemplo, mas que ao mesmo tempo não usa secamente o MDI, tendo muitas facilidades como uma delas o uso de abas pra simular o CTRL+TAB, tornando mais direto o acesso às janelas abertas.
Acho que tudo depende do caso e as vezes gosto do cliente. Mas sobre preferência geral, gosto muito do estilo normal com uso de DockSite.
GOSTEI 0
Eselvati
09/09/2005
Acho o IBEXPERT tao legalzinho com suas janelinhas MDI, vcs nao acham? acho q MDI pra morrer, só qdo o delphi WIN32 não mais existir ou decretarem uma lei onde todos os programadores serao obrigados a programar para browsers....:)
Ederson
Ederson
GOSTEI 0
Yashin
09/09/2005
Concordo com o modelo do IBExpert, mas ele é realmente um MDI? Gostaria de fazer um aplicativo com esse modelo, ou seja, paineis DOCK, possibilidade de várias janelas e quando minimizo o aplicativo pela form principal, tudo é minimizado junto.
GOSTEI 0
Ildefonso
09/09/2005
Olá, pessoal.
O australiano que falou sobre a interface MDI deve ser o próximo da lista a ser despedido.
Quando participei do projeto de implantação do SENAC Informática aqui no Paraná, tive um aluno que era gerente financeiro de uma grande empresa de transportes (que atende, inclusive, todos os estados do sul e sudeste) mas cometeu uma dessas gafes de opinião.
Era uma aula conceitual e eu explicava uma nova tecnologia que estava sendo disseminada, àquela época, nos Estados Unidos. Depois de uns cinco minutos, aquele senhor levantou-se e me disse asperamente ´Eu não tenho tempo a perder com conversinhas sem sentido prático. Não vim até esta escola para ouvir falar de video-games ou outra curiosidade qualquer.´
Eu estava, em 1986, falando sobre o Macintosh, mouse, ícones...
Bem... Vieram crises e este ´entendido´ foi um dos primeiros a ser despedido lá na big-one. Parece que o consideraram ´muito atrás no seu tempo´.
Comentários ácidos à parte, a interface MDI não deverá ser abandonada (a não ser, como comentou o Ederson, que decretem uma lei proibindo-A). Por outro lado, como disse o Massuda, a maioria dos programas MDI pecam pela própria concepção da interface com os usuários.
Em um soft MDI, pelo conceito que o define, as janelas devem se integrar e permitir interação entre si.
Por exemplo: um controle de estoque não deveria deixar dois formulários de cadastro de produto ficarem abertos ao mesmo tempo, certo? EEERRRRRAADDDDOOOOOO !!!!
Um administrador precisa ver duas ou mais ´fichas´ ao mesmo tempo. Comparar o registros dos produtos. Ater-se a detalhes que só com a comparação lado-a-lado poderá tomar uma decisão.
Por outro lado, lá para o encarregado do almoxarifado, sua rotina diz respeito a prestar atenção em um único documento de cada vez: ele dá entrada em um pedido, reproduzindo uma cópia. Não vai precisar, então, de vários formulários abertos ao mesmo tempo. Ou seja, existe momentos que um formulário deve ser aberto n-vezes, em outras, apenas uma.
Em meu software para advogados, é possível ver ao mesmo tempo o formulário de clientes, partes contrárias, processos... Tal como em uma mesa, tudo fica disponível o tempo todo. É assim que um advogado trabalha: interagindo entre vários documentos. É isso que reproduzo para ele na tela do computador. Porém, a tela de acréscimo ou de novo registro de processo não pode ser aberta mais de uma vez.
Mais uma coisa importante: o .Net prevê e dá sustentação aos MDIs. Prova disso é a própria interface do VS e do D2005. A Microsoft não é boba...
O que me deixa muito irritado é alguns usando interface MDI, porém exibindo os formulários filhos com .ShowModal ... Isso é um absurdo. ShowModal é para diálogos restritos. Não para formulários comuns. O ruim é que até professores de faculdade dão péssimos exemplos.
Agora, menos técnico, mais pessoal, quero expressar que DETESTO navegar na Internet com o IE. Quando vou pesquisar, quero ver e comparar várias coisas. Num instantinho o desktop fica todo bagunçado. Muitas vezes, para eu achar uma janela em específico, preciso ficar restaurando e minimizando outras tantas, até que o assunto procurado venha para frente. O IE deveria ser apresentado, também, na forma de tabs ou em MDIs.
Na minha opinião, a Microsoft começou a dar enfase em interfaces SDI quando percebeu coisas que eu vi várias vezes em centenas de lugares onde prestei consultoria e treinamento: o usuário ´leigo plus´ minimizava uma janela do Word para consultar uma tabela de preços no Excel. Depois, ao invés de restaurar o documento em que trabalhava, clicava (e já dava trabalho com o clique-duplo) no ícone do aplicativo e abria um novo documento em branco. Além disso, griatava ´Essa m. comeu todo o meu trabalho´. No começo, imagiando que ele havia fechado o doc, eu devolvia o grito pedindo que ele abrisse o documento de novo a partir do menu Arquivo. Então vinha: ´Não falei! Ele comeu quase tudo... Só tem um pedacinho aqui e não posso nem editar porque tá travado... Olha ai, ó! Somente pra leitura.´
Dizia um colega, pior que três [i:da1198a2e2]analfabáiticos[/i:da1198a2e2] é um [u:da1198a2e2]leigo plus[/u:da1198a2e2]. Ele não confessa que não sabe porcaria alguma e fica fazendo você perder tempo com explicações exotéricas de como deveria ser e não é.
Até mais, senhores. Espero que ninguém fique ofendido com a pequena dose de cinismo.
O australiano que falou sobre a interface MDI deve ser o próximo da lista a ser despedido.
Quando participei do projeto de implantação do SENAC Informática aqui no Paraná, tive um aluno que era gerente financeiro de uma grande empresa de transportes (que atende, inclusive, todos os estados do sul e sudeste) mas cometeu uma dessas gafes de opinião.
Era uma aula conceitual e eu explicava uma nova tecnologia que estava sendo disseminada, àquela época, nos Estados Unidos. Depois de uns cinco minutos, aquele senhor levantou-se e me disse asperamente ´Eu não tenho tempo a perder com conversinhas sem sentido prático. Não vim até esta escola para ouvir falar de video-games ou outra curiosidade qualquer.´
Eu estava, em 1986, falando sobre o Macintosh, mouse, ícones...
Bem... Vieram crises e este ´entendido´ foi um dos primeiros a ser despedido lá na big-one. Parece que o consideraram ´muito atrás no seu tempo´.
Comentários ácidos à parte, a interface MDI não deverá ser abandonada (a não ser, como comentou o Ederson, que decretem uma lei proibindo-A). Por outro lado, como disse o Massuda, a maioria dos programas MDI pecam pela própria concepção da interface com os usuários.
Em um soft MDI, pelo conceito que o define, as janelas devem se integrar e permitir interação entre si.
Por exemplo: um controle de estoque não deveria deixar dois formulários de cadastro de produto ficarem abertos ao mesmo tempo, certo? EEERRRRRAADDDDOOOOOO !!!!
Um administrador precisa ver duas ou mais ´fichas´ ao mesmo tempo. Comparar o registros dos produtos. Ater-se a detalhes que só com a comparação lado-a-lado poderá tomar uma decisão.
Por outro lado, lá para o encarregado do almoxarifado, sua rotina diz respeito a prestar atenção em um único documento de cada vez: ele dá entrada em um pedido, reproduzindo uma cópia. Não vai precisar, então, de vários formulários abertos ao mesmo tempo. Ou seja, existe momentos que um formulário deve ser aberto n-vezes, em outras, apenas uma.
Em meu software para advogados, é possível ver ao mesmo tempo o formulário de clientes, partes contrárias, processos... Tal como em uma mesa, tudo fica disponível o tempo todo. É assim que um advogado trabalha: interagindo entre vários documentos. É isso que reproduzo para ele na tela do computador. Porém, a tela de acréscimo ou de novo registro de processo não pode ser aberta mais de uma vez.
Mais uma coisa importante: o .Net prevê e dá sustentação aos MDIs. Prova disso é a própria interface do VS e do D2005. A Microsoft não é boba...
O que me deixa muito irritado é alguns usando interface MDI, porém exibindo os formulários filhos com .ShowModal ... Isso é um absurdo. ShowModal é para diálogos restritos. Não para formulários comuns. O ruim é que até professores de faculdade dão péssimos exemplos.
Agora, menos técnico, mais pessoal, quero expressar que DETESTO navegar na Internet com o IE. Quando vou pesquisar, quero ver e comparar várias coisas. Num instantinho o desktop fica todo bagunçado. Muitas vezes, para eu achar uma janela em específico, preciso ficar restaurando e minimizando outras tantas, até que o assunto procurado venha para frente. O IE deveria ser apresentado, também, na forma de tabs ou em MDIs.
Na minha opinião, a Microsoft começou a dar enfase em interfaces SDI quando percebeu coisas que eu vi várias vezes em centenas de lugares onde prestei consultoria e treinamento: o usuário ´leigo plus´ minimizava uma janela do Word para consultar uma tabela de preços no Excel. Depois, ao invés de restaurar o documento em que trabalhava, clicava (e já dava trabalho com o clique-duplo) no ícone do aplicativo e abria um novo documento em branco. Além disso, griatava ´Essa m. comeu todo o meu trabalho´. No começo, imagiando que ele havia fechado o doc, eu devolvia o grito pedindo que ele abrisse o documento de novo a partir do menu Arquivo. Então vinha: ´Não falei! Ele comeu quase tudo... Só tem um pedacinho aqui e não posso nem editar porque tá travado... Olha ai, ó! Somente pra leitura.´
Dizia um colega, pior que três [i:da1198a2e2]analfabáiticos[/i:da1198a2e2] é um [u:da1198a2e2]leigo plus[/u:da1198a2e2]. Ele não confessa que não sabe porcaria alguma e fica fazendo você perder tempo com explicações exotéricas de como deveria ser e não é.
Até mais, senhores. Espero que ninguém fique ofendido com a pequena dose de cinismo.
GOSTEI 0
Mysys
09/09/2005
e ai como fica .. eu uso MDI porque meus clientes pedirao.. oque eu posso fazer
ex: meu cliente esta fazendo uma locacao pra um cliente ai esse cliente fala .. ´ja volto vou buscar outra titulo´ meu cliente simplismente inicia uma nova locacao ou 3 ou 4 ou inicia devolucao ou cadastro de cliente consulta qualquer coisa simultaneamente .. isso é uma nessecidade dos meus clientes ...
CADA CASO É UM CASO .. exatamente como tem gente que usa mysql ´ como eu ´ e tem gente que precisa de uma base mais robusta SQL-Server ou oracle ..
ex: meu cliente esta fazendo uma locacao pra um cliente ai esse cliente fala .. ´ja volto vou buscar outra titulo´ meu cliente simplismente inicia uma nova locacao ou 3 ou 4 ou inicia devolucao ou cadastro de cliente consulta qualquer coisa simultaneamente .. isso é uma nessecidade dos meus clientes ...
CADA CASO É UM CASO .. exatamente como tem gente que usa mysql ´ como eu ´ e tem gente que precisa de uma base mais robusta SQL-Server ou oracle ..
GOSTEI 0
Rjun
09/09/2005
Olá, pessoal.
O australiano que falou sobre a interface MDI deve ser o próximo da lista a ser despedido.
Sem querer fazer propaganda, mas já fazendo, acho que [url=http://www.ssw.com.au/ssw/]Adam Cogan[/url] não estaria muito preocupado com isso.
GOSTEI 0
Eduardo7
09/09/2005
Ola, não concordo com o fim do MDI.
Eu acho q o IBExpert tem uma das melhores interfaces MDI.
É muito facil, agil, rapido, bonito. tudo de bom..
Tenho quase certeza que a AKSoftware usou componentes da DevExpress.
Eu acho q o IBExpert tem uma das melhores interfaces MDI.
É muito facil, agil, rapido, bonito. tudo de bom..
Tenho quase certeza que a AKSoftware usou componentes da DevExpress.
GOSTEI 0
Zatiri
09/09/2005
Olá galera. Puxa, como é gostoso ver um ou vários posts de uns anos atrás. Pena que eu não possa fazer isso com mais frequencia. Eu programo em Delphi, tenho algumas aplicações comerciais rodando em produção (muita coisa com dicas e ajudas do pessoal daqui) e estou ansioso para passar (na verdade passando) para o C#. Uma das coisas que estão me preocupando é justamente o uso de MDI no C. Tenho que admitir ( :oops: ) que talvez eu esteja um pouco sem visão, pois apesar de ver que a ´cara´ dos softwares está mudando, e isso é bom, é saudável, minhas aplicações ainda usam o bom e velho MDI. Lendo esse post eu fiquei bem curioso de saber qual a opinião das mesmas pessoas depois de quase quatro anos. E aí? Embora minha opinião não seja tão relevante aqui, mas eu posso dizer um motivo para ainda usar o MDI: pelo menos em tese (não se esqueçam disso) eu tenho um melhor controle sobre as janelas: tenho os dois casos às vezes na mesma aplicação. Por exemplo: um colega aí em cima disse que determinado cliente prefere abrir várias telas da mesma função ao mesmo tempo, enquanto outro prefere apenas clicar e a aplicação ´sabe´ que é pra alternar e não abrir uma nova janela. Será que algum dos colegas que postaram aí e outros gostariam de se manifestar? acho que depois desse tempo ficaria muito legal trocarmos idéias. Aguardarei. Abraços
GOSTEI 0
Discorpio
09/09/2005
Boa noite a todos.
Creio eu que, com poucas palavras, o nosso amigo Ildelfonso já explicou todas as principais diferenças entre MDI e SDI, no que concordo com ele.
Se o MDI fosse aplicação obsoleta, a SUN-Microsystems não incluiria na biblioteca Swing da Linguagem Java, os componentes JDesktopPane (Form pai) e JInternalFrame (Form Filho).
A propósito, meu Idelfonso, qual a versão do IE que usa ou que usou ?, pois a partir da versão 7, o mesmo já dispõe o sistema de TABs, eu o utilizo aqui, e além de estar com o Forum DevMedia aberto, estou na página do Wikipedia, aberto.
Para mim, o sistema MDI no Delphi, possui duas desvantagens:
1º) Voce corre o risco de abrir dois forms de Cadastro da mesma tabela, e voce tem que ter o cuidado de que quando abrir um form de Cadastro da mesma tabela, não permitir que se abre outro.
Mas como isso é possível :?:
2º) Ai que entra a segunda desvantagem, não sei se já perceberam, porém em MDI no Delphi, voce pode abrir vários formulários com a mesma instância, ou seja, o mesmo nome de variável. Mas isto é possível :?: Sim é possível, porque em sistemas MDI, O Form pai, possui um Array dinâmico de Forms chamado MDIChildren, e quando um Form é instanciado na memória, a Array MDIChildren faz referência a este Form como o primeiro índice de sua lista, se a mesma instancia é criada, o MDIChildren o joga no segundo índice de sua referencia e assim por diante. Isto simula que a mesma instância seja redimencionada para um array, portanto, essa desvantagem permite que voce abra duas telas de Cadastro da mesma tabela.
Podem testar se quiserem
Creio eu que, com poucas palavras, o nosso amigo Ildelfonso já explicou todas as principais diferenças entre MDI e SDI, no que concordo com ele.
Se o MDI fosse aplicação obsoleta, a SUN-Microsystems não incluiria na biblioteca Swing da Linguagem Java, os componentes JDesktopPane (Form pai) e JInternalFrame (Form Filho).
...O IE deveria ser apresentado, também, na forma de tabs ou em MDIs...
A propósito, meu Idelfonso, qual a versão do IE que usa ou que usou ?, pois a partir da versão 7, o mesmo já dispõe o sistema de TABs, eu o utilizo aqui, e além de estar com o Forum DevMedia aberto, estou na página do Wikipedia, aberto.
Para mim, o sistema MDI no Delphi, possui duas desvantagens:
1º) Voce corre o risco de abrir dois forms de Cadastro da mesma tabela, e voce tem que ter o cuidado de que quando abrir um form de Cadastro da mesma tabela, não permitir que se abre outro.
Mas como isso é possível :?:
2º) Ai que entra a segunda desvantagem, não sei se já perceberam, porém em MDI no Delphi, voce pode abrir vários formulários com a mesma instância, ou seja, o mesmo nome de variável. Mas isto é possível :?: Sim é possível, porque em sistemas MDI, O Form pai, possui um Array dinâmico de Forms chamado MDIChildren, e quando um Form é instanciado na memória, a Array MDIChildren faz referência a este Form como o primeiro índice de sua lista, se a mesma instancia é criada, o MDIChildren o joga no segundo índice de sua referencia e assim por diante. Isto simula que a mesma instância seja redimencionada para um array, portanto, essa desvantagem permite que voce abra duas telas de Cadastro da mesma tabela.
Podem testar se quiserem
GOSTEI 0
Cafe Urupa
09/09/2005
Cara, prossegue com a programação MDI, programo dessa forma há 15 anos e nunca tive problemas, é so saber programar. E claro, nao pode deixar de fazer algo somente porque "dá a impressao..." conforme citado anteriormente.
Programação em mdi requer um pouco de cuidado, mas atende melhor do que ficar abrindo um monte de janelas.
As Janelas de busca e de impressao, essas sim uso SDI, mas os cadastros, movimentos e financeiros, tudo mdi. Vá em frente. Conquistei muitos clientes graças ao poder de se trabalhar com várias janelas no mesmo form. sem contar que, mesmo com o cliente trabalhando, ele pode minimizar o programa pra fazer outra coisa sem ter que cancelar ou gravar forçadamente alguma coisa pra liberar o programa.
Programação em mdi requer um pouco de cuidado, mas atende melhor do que ficar abrindo um monte de janelas.
As Janelas de busca e de impressao, essas sim uso SDI, mas os cadastros, movimentos e financeiros, tudo mdi. Vá em frente. Conquistei muitos clientes graças ao poder de se trabalhar com várias janelas no mesmo form. sem contar que, mesmo com o cliente trabalhando, ele pode minimizar o programa pra fazer outra coisa sem ter que cancelar ou gravar forçadamente alguma coisa pra liberar o programa.
e ai como fica .. eu uso MDI porque meus clientes pedirao.. oque eu posso fazer
ex: meu cliente esta fazendo uma locacao pra um cliente ai esse cliente fala .. ´ja volto vou buscar outra titulo´ meu cliente simplismente inicia uma nova locacao ou 3 ou 4 ou inicia devolucao ou cadastro de cliente consulta qualquer coisa simultaneamente .. isso é uma nessecidade dos meus clientes ...
CADA CASO É UM CASO .. exatamente como tem gente que usa mysql ´ como eu ´ e tem gente que precisa de uma base mais robusta SQL-Server ou oracle ..
ex: meu cliente esta fazendo uma locacao pra um cliente ai esse cliente fala .. ´ja volto vou buscar outra titulo´ meu cliente simplismente inicia uma nova locacao ou 3 ou 4 ou inicia devolucao ou cadastro de cliente consulta qualquer coisa simultaneamente .. isso é uma nessecidade dos meus clientes ...
CADA CASO É UM CASO .. exatamente como tem gente que usa mysql ´ como eu ´ e tem gente que precisa de uma base mais robusta SQL-Server ou oracle ..
GOSTEI 0
José Maciel
09/09/2005
Eles não sobrevivem... Simples =D
GOSTEI 0
Nelson Santos
09/09/2005
ganhe dinheiro com softwares 3D em Delphi 7
http://www.3dsistemas.com.br
http://www.3dsistemas.com.br
GOSTEI 0
Joao Ishiwatari
09/09/2005
Discussão do tempo do "êpa" ...
Trabalho com controle de acesso, os usuários da minha aplicação são em sua grande maioria, pessoas com baixo/médio grau de escolaridade, pouca ou nenhuma prática com computadores e por esses motivos principalmente, construí a interface do meu sistema como SDI e praticamente todos os forms operam como "Modal", isso porque o usuário se perde, perde o controle da aplicação por falta de conhecimento básico de informática. Tentei diversas formas de controle para evitar o uso dos modais, principalmente em forms de consulta mas até agora de forma infrutífera. Infelizmente alguns problemas devem ser resolvidos na origem, no meu caso, nos usuários.
Hoje estou começando um novo layout e pretendo trabalhar com MDI limitando a quantidade de instâncias de um mesmo formulário de forma parametrizada por form, assim consigo interagir com o usuário em casos de excesso, como um porteiro que abre sucessivos forms de consulta de moradores ao invés de reaproveitar os que já estão abertos.
Acredito que sempre haverá espaço para MDI no mercado.
Trabalho com controle de acesso, os usuários da minha aplicação são em sua grande maioria, pessoas com baixo/médio grau de escolaridade, pouca ou nenhuma prática com computadores e por esses motivos principalmente, construí a interface do meu sistema como SDI e praticamente todos os forms operam como "Modal", isso porque o usuário se perde, perde o controle da aplicação por falta de conhecimento básico de informática. Tentei diversas formas de controle para evitar o uso dos modais, principalmente em forms de consulta mas até agora de forma infrutífera. Infelizmente alguns problemas devem ser resolvidos na origem, no meu caso, nos usuários.
Hoje estou começando um novo layout e pretendo trabalhar com MDI limitando a quantidade de instâncias de um mesmo formulário de forma parametrizada por form, assim consigo interagir com o usuário em casos de excesso, como um porteiro que abre sucessivos forms de consulta de moradores ao invés de reaproveitar os que já estão abertos.
Acredito que sempre haverá espaço para MDI no mercado.
GOSTEI 0