Wolverius 0 Denunciar post Postado Fevereiro 14, 2013 Olá, sou novo no Fórum e na linguagem. estou fazendo um cursinho online (meia boca e de graça) para tentar me aprofundar em Delphi, a lógica eu tenho de minha parte acadêmica que eu não sei porque os inúteis dos professores insistem em passar C não orientado a objetos. Seguindo a Apostila eu encontrei um erro do qual não consigo me livrar é o: [Error] MDI_Texto.pas(43): Incompatible types: 'TBasicAction' and 'TCloseAction' a linha é essa do "caFree" procedure TfrmTexto.Memo1Change(Sender: TObject); begin if memo1.Modified = true then begin if messagedlg('Deseja salvar as alterações feitas em'+ Caption + '?', mtConfirmation, [mbYes,mbNo], 0) = mrYes then begin frmPrincipal.Salvar1.Click; Action := caFree; {AQUI QUE DÁ O ERRO} frmTexto := NIL; end else begin close; frmTexto := Nil; end; end; end; end. o que será que eu fiz de errado? pode ser algo errado na função do meu botão salvar que está dando incompatibilidade? até essa parte estava tudo compilado e funcionando.Desculpem o incômodo, estou entrando de cabeça e estudando 6 horas por dia aproveitando o meu seguro desemprego para entrar de cabeça na área do Delphi. terei uma entrevista na próxima semana (por sorte não muito concorrida) e quero ter o maior conhecimento possível até lá. Compartilhar este post Link para o post Compartilhar em outros sites
Wolverius 0 Denunciar post Postado Fevereiro 14, 2013 Tirei os ";" depois dos cafree, aí começou a dar o mesmo erro na linha de baixo. eu não entendo. preciso dar mais alguma informação pertinente a ajuda? Nossa galera, consegui, era muito simples, o meu precedure ali no começo estava em um lugar absolutamente errado, devo ter clicado sem querer no touch, ou fui no lugar errado mesmo.Isso que dá ficar "zumbizando" muito tempo em uma coisa, acabamos com a cabeça cheia e nervosa. Desculpem o incômodo. se alguém quiser me mandar um material para aprendizado rápido e eficiente eu seria muito grato. até mais.unit MDI_Texto; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TfrmTexto = class(TForm) Memo1: TMemo; procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private declarations } public { Public declarations } end; var frmTexto: TfrmTexto; implementation uses MDI_Principal; {$R *.dfm} procedure TfrmTexto.FormClose(Sender: TObject; var Action: TCloseAction); begin if Memo1.Modified = true then begin if Messagedlg('Deseja salvar as alterações feitas em '+ Caption +'?', mtConfirmation,[mbYes,mbNo],0) = mrYes then begin frmPrincipal.Salvar1.Click; Action := caFree; frmTexto :=Nil; end else begin Action := caFree; frmTexto := NIL; end; end; end; end. Compartilhar este post Link para o post Compartilhar em outros sites
Humberto Oliveira Pinto 8 Denunciar post Postado Fevereiro 15, 2013 o que tem dentro do frmPrincipal.Salvar1.Click; Compartilhar este post Link para o post Compartilhar em outros sites
Wolverius 0 Denunciar post Postado Fevereiro 15, 2013 procedure TfrmPrincipal.Salvar1Click(Sender: TObject); begin with TfrmTexto(ActiveMDIChild)do begin if dlSalvar.FileName ='' then begin dlsalvar.FileName:= Caption; end; if dlsalvar.Execute then begin Memo1.Lines.SaveToFile(dlSalvar.FileName); Caption := ExtractFileName (dlsalvar.FileName); Memo1.Modified := false; end; end; end; Compartilhar este post Link para o post Compartilhar em outros sites
Roberto Campos 0 Denunciar post Postado Março 10, 2013 if messagedlg('Deseja salvar as alterações feitas em'+ Caption + '?', Que Caption é esse ? É alguma variável global ? ou faltou você colocar o componente a qual esse Caption pertence ? Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Março 11, 2013 Olá amigos. Da forma como está, a propriedade Caption pertence ao "Form" em questão. Quando utilizar alguma propriedade do próprio Form, uma boa dica é utilizá-la com o "Self", assim fica claro de onde está vindo a informação que você esteja trabalhando. Referente ao seu problema, você conseguiu resolve-lo? Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
Wolverius 0 Denunciar post Postado Março 11, 2013 Sim gente, obrigado. resolvi e já nem tenho o programa mais. De qualquer forma muito obrigado. Compartilhar este post Link para o post Compartilhar em outros sites