Adriano, eu fiz um programinha modelo para trabalhar com forms MDI e funcionou, porém tive que fazer algumas coisas:
Para abrir o form estou utilizando assim: procedure TFPrincipal.ToolButton1Click(Sender: TObject); var MDIAtividade: TFAtividade; begin MDIAtividade := TFAtividade.Create(Application); // coloquei o contador de forms MDI mas vou implementar uma // rotina de verificacao e contagem de form. Creio que 2 ou 3 forms // iguais abertos sejam mais que suficiente. MDIAtividade.Caption := 'Cadastro de Atividades '+IntToStr(MDIChildCount+1); // seto o tamanho das janelas, pois elas não obedecem ao design do delphi (tem vida própria... rsrsrs) MDIAtividade.Width := 383; MDIAtividade.Height := 283; MDIAtividade.Show; end; Coloquei um DataSet e um DataSource no form dos cadastros básicos, pois senão, sempre que abria uma nova janela e movimentava os registros nelas, as alterações se refletiam nos outros dbgrids das janelas abertas. Consegui abrir as janelas normalmente, porém sempre que troco de uma janela para outra o "pointer" do dbgrid é movido para o primeiro registro selecionado. Para minhas consultas básicas isto é suficiente, porém gostaria de guardar a posição do "pointer" e restaurá-la sempre que selecionar novamente o form, porém não sei em quais eventos colocar, seria algo assim: Sempre que o dbgrid for movido, atualiza uma variavel com registro := dataset.recno; e sempre que for retornar para a janela em questão, dataset.recno := registro; porém não sei onde mecher. Se alguém puder me dar uma luz. Obrigado. Eduardo Moraes --- Em delphi-br@yahoogrupos.com.br, Adriano Barbosa <adriano.barb...@...> escreveu > > Também estou com o mesmo problema, estou fazendo uns testes aqui se der certo > posto a resposta aqui. > > ________________________________ > De: pastoreantenas <pastoreante...@...> > Para: delphi-br@yahoogrupos.com.br > Enviadas: Domingo, 20 de Setembro de 2009 15:34:05 > Assunto: [delphi-br] Dúvidas iniciais > > > Estou iniciando a migração de um sistema de FlagShip para Delphi e > consequentemente aprendendo algumas coisas (muitas coisas). > Estou com algumas dúvidas: > 1a. Como passar um DataSet como parâmetro? Tenho alguns cadastros > básicos que utilizam o mesmo form e quase sempre a mesma lógica de > programação, então gostaria de fazer um form padrão e depois herdar as > propriedades deste form para outros cadastros, porém estou usando um > DataModule para os DataSet e DataSource. Gostaria de informar assim > DataSetConsulta := DataSetCadastro mas não sei como passar um dataset > como parâmetro, nem sei se é possível. >