Ir para conteúdo
Fórum Script Brasil

fabioLZS

Membros
  • Total de itens

    3
  • Registro em

  • Última visita

Sobre fabioLZS

fabioLZS's Achievements

0

Reputação

  1. Vixi, piorou mais ainda, não manjo nada de java (é java né?). Meu problema e passar a procedure pra um TNotifyEvent. Se eu conseguir fazer isso acho que o resto vai ser fácil. Já vi varios exemplos na net só que todas as procedures estão no mesmo form, e eu quero separa-las para o código não ficar muito confuso. Bom, se não conseguir resolver isso hoje coloco um toolbar em cada form mesmo, fazer o que. Bem, por enquanto obrigado!
  2. Desculpe Jhonas, mas copiei a mensagem de erro errada. Vou colocar aqui todos os códigos que estou usando. tavez esteja fazendo algo errado em outra parte: No form principal: ... public { public declarations } procedure SetBtnEvent(BtnID: byte; BtnEvent: TNotifyEvent); end; var frmMain: TfrmMain; implementation ... procedure TfrmMain.SetBtnEvent(BtnID: byte; BtnEvent: TNotifyEvent); begin case btnID of 1: tbAdd.OnClick := BtnEvent; // botão insert end; end; procedure TfrmMain.tbAddClick(Sender: TObject); //botão inserir begin dmMain.zqPES.Insert; ShowMessage('Inserindo...'); //só para testar... end; ... Agora o código no form filho ... public { public declarations } procedure pesAddClick; var frmCadPessoas: TfrmCadPessoas(Sender: TObject); implementation ... procedure TfrmCadPessoas.pesAddClick; //procedimentos que devem ser feitos ao se precionar o botão de inserir no form principal begin if frmValCPF_CNPJ = nil then Application.CreateForm(TfrmValCPF_CNPJ, frmValCPF_CNPJ); frmValCPF_CNPJ.ShowModal; if valCpfCnpj = True then begin dmMain.zqPES.Insert; dmMain.zqFIS.Insert; dmMain.zqEND.Insert; EnableComponents(Self); //função própria UnsetReadOnly(Self); //função própria ClearComponents(Self); //função própria dbeCOD.ReadOnly := True; dbeCOD.Color := clForm; dmMain.zqFISFIS_CPF.AsString := Copy(numCpfCnpj, 1, 3) + '.' + Copy(numCpfCnpj, 4, 3) + '.' + Copy(numCpfCnpj, 7, 3) + '-' + Copy(numCpfCnpj, 10, 2); cbTipo.ItemIndex := 0; dbeNOME.SetFocus; end; end; procedure TfrmCadPessoas.FormCreate(Sender: TObject); begin DisableComponents(Self); filterClick := False; ActiveSQLQuery := dmMain.zqPES; frmMain.SetBtnEvent(1, pesAddClick); //erro nessa linha. Estou usando essa função no form create ao invez de onactive porque por enquanto so tenho 1 form filho. end; . .. Ao compilar aparece esse erro: unitcadpessoas.pas(197,37) Error: Incompatible type for arg no. 2: Got "untyped", expected "<procedure variable type of procedure(TObject) of object;Register>" unitmain.pas(184,20) Hint: Found declaration: TfrmMain.SetBtnEvent(Byte,TNotifyEvent); Já tentei passar varios tipos de parametros e ate deixar sem nada como acima, mas nada funciona.
  3. Desculpem ressucitar um tópico tão antigo, mas foi o único que achei onde o que esta sendo explicado é exatamento o que estou tentando fazer. Bom, segui todas as instruções que estão acima e quando mando compilar aparece o seguinte erro: unitcadpessoas.pas(197,37) Error: Wrong number of parameters specified for call to "pesAddClick" que corresponde a essa linha: frmMain.SetBtnEvent(1, pesAddClick); Já tentei passas diversos parâmetros para o a procedure pesAddClick mas nenhuma funcionou. Sempre aparece o mesmo erro. O que estou fazendo de errado? :blink: Graçias!
×
×
  • Criar Novo...