Olá, Eduardo.

Tb não deu certo... continua dando o mesmo tipo de erro...

mas se eu retiro a linha onde está escrito:
oRaca.Create;
dá certo...
Mas isto não é o correto, certo?
Segundo o que entendi sobre o conceito de classes, toda classe precisa ser 
criada/ inicializada antes de chamar qualquer método dela...

[]'s

Sheila


>From: "Eduardo" <[EMAIL PROTECTED]>
>Reply-To: delphi-br@yahoogrupos.com.br
>To: <delphi-br@yahoogrupos.com.br>
>Subject: RES: [delphi-br] Re: Criando classes no delphi
>Date: Sun, 22 May 2005 12:21:36 -0300
>
>Faz um teste assim
>
>constructor TRaca.Create;
>    begin
>      inherited;
>      //  idRaca := 0;
>      //  descricao:= '';
>      //  porte:= '';
>      //  especie:= '';
>      end;
>
>Eduardo
>
>
>
>-----Mensagem original-----
>De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
>Em nome de Sheila
>Enviada em: sábado, 21 de maio de 2005 23:45
>Para: delphi-br@yahoogrupos.com.br
>Assunto: Re: [delphi-br] Re: Criando classes no delphi
>
>
>Olá.
>segue as respostas abaixo:
>   ----- Original Message -----
>   From: Romario (Listas)
>   To: delphi-br@yahoogrupos.com.br
>   Sent: Saturday, May 21, 2005 4:49 PM
>   Subject: Re: [delphi-br] Re: Criando classes no delphi
>
>
>   1) Você Conseguiu compilar o programa?
>   RESP: sim, compilei o programa
>
>   2) Você fez algum teste?
>   RESP: a conexão com o bd está ok, inclusive coloquei um datagrid para
>testar e exibiu os dados direitinho
>
>   3) Onde e qual é o erro que está ocorrendo?
>   RESP: o erro ocorre justamente na linha onde está escrito:
>"oRaca.Create;"
>   na "procedure TfrmRaca.btnGravarClick(Sender: TObject)"
>   da unit "untRaca"
>   e o erro que dá é o seguinte:
>   "Access violation at address 004E48F8 in module
>'prjExercicioClasse.Exe'. Read of Address of 00000000".
>   Process Stopped. Use Step or Run to continue.
>   e quando dou "RUN" na animação do programa pula para a linha onde está
>escrito: "oRaca.Free;"
>
>
>   4) Quais os componentes de acesso à dados que você está utilizando?
>   RESP: os componentes ADO, mas o acesso a base de dados está
>funcionando
>
>   5) Qual o banco de dados que você está utilizando?
>   RESP: vou utilizar o Access 2000 mesmo
>
>   Dê mais detalhes para que possamos ajudá-la.
>   RESP: Se o grupo aceitasse anexos, ficava mais fácil...
>   Sds,
>
>   Romario
>
>
>
>   Sheila escreveu:
>   > Parece que o grupo não aceita anexos :(
>   > Então vou enviar o conteúdo das units logo abaixo.
>   >
>   >   Boa tarde, pessoal.
>   >
>   >   Estou tentando aplicar o conceito de uml (diagrama de classes) no
>delphi 7 e fiz um exercício me baseando no livro "Desenvolvendo
>aplicações com UML 2.0" de Ana Cristina Melo, mas está dando erro.
>   >   Estou enviando em anexo o exercício para quem puder me ajudar.
>   >   Estou precisando para fazer o projeto da faculdade e estou tendo
>dificuldades por enquanto nesta parte.
>   >   Se alguém tiver uma apostila ou link que explique melhor isso será
>de grande ajuda pq pesquisei no google e não achei muita coisa que me
>ajudasse.
>   >
>   >   A quem puder me ajudar eu agradeço antecipadamente.
>   >
>   >   []'s
>   >   Sheila
>   >
>   >
>   >   // UNIT RACA DO FORM
>   >   unit untRaca;
>   >
>   >   interface
>   >
>   >   uses
>   >     Windows, Messages, SysUtils, Variants, Classes,
>   >     Graphics, Controls, Forms,
>   >     Dialogs, StdCtrls, Mask, Buttons, ExtCtrls;
>   >
>   >   type
>   >     TfrmRaca = class(TForm)
>   >       pnlCabecalho: TPanel;
>   >       btnLocalizar: TBitBtn;
>   >       btnPrimeiroRegistro: TBitBtn;
>   >       btnRegistroAnterior: TBitBtn;
>   >       btnProximoRegistro: TBitBtn;
>   >       btnUltimoRegistro: TBitBtn;
>   >       pnlDados: TPanel;
>   >       lblDescricao: TLabel;
>   >       lblIDRaca: TLabel;
>   >       lblPorte: TLabel;
>   >       edtDescricao: TEdit;
>   >       mskIDAnimal: TMaskEdit;
>   >       cboPorte: TComboBox;
>   >       cboEspecie: TComboBox;
>   >       lblEspecie: TLabel;
>   >       pnlRodape: TPanel;
>   >       btnGravar: TBitBtn;
>   >       btnCancelar: TBitBtn;
>   >       lblTituloCinza: TLabel;
>   >       lblTituloAzul: TLabel;
>   >       procedure FormClose(Sender: TObject; var Action:
>TCloseAction);
>   >       procedure btnGravarClick(Sender: TObject);
>   >     private
>   >       { Private declarations }
>   >       function validarCampos(): boolean;
>   >     public
>   >       { Public declarations }
>   >     end;
>   >
>   >   var
>   >     frmRaca: TfrmRaca;
>   >
>   >   implementation
>   >   uses clRaca;
>   >
>   >   var
>   >     oRaca : TRaca;
>   >
>   >   {$R *.dfm}
>   >
>   >   procedure TfrmRaca.FormClose(Sender: TObject; var Action:
>TCloseAction);
>   >   begin
>   >     Action := caFree;
>   >   end;
>   >
>   >   procedure TfrmRaca.btnGravarClick(Sender: TObject);
>   >   begin
>   >
>   >     if (validarCampos) then
>   >       begin
>   >         oRaca.Create;
>   >         oRaca.IncluirRaca(edtDescricao.Text, cboPorte.Text,
>cboEspecie.Text);
>   >         oRaca.Free;
>   >       end;
>   >
>   >   end;
>   >
>   >
>   >   function TfrmRaca.validarCampos(): boolean;
>   >   begin
>   >     validarCampos := true;
>   >
>   >     if (Length(edtDescricao.text) = 0) then
>   >       begin
>   >         ShowMessage('É necessário informar a descrição da raça!');
>   >         edtDescricao.SetFocus;
>   >         validarCampos := false;
>   >         exit;
>   >       end;
>   >
>   >     if (cboPorte.ItemIndex = -1) then
>   >       begin
>   >         ShowMessage('É necessário informar o porte da raça!');
>   >         cboPorte.SetFocus;
>   >         validarCampos := false;
>   >         exit;
>   >       end;
>   >
>   >     if (cboEspecie.ItemIndex = -1) then
>   >       begin
>   >         ShowMessage('É necessário informar a espécie da raça!');
>   >         cboEspecie.SetFocus;
>   >         validarCampos := false;
>   >         exit;
>   >       end;
>   >   end;
>   >
>   >   end.
>   >
>   >
>   >
>   >   //  UNIT DA CLASSE RACA
>   >   unit clRaca;
>   >
>   >   interface
>   >   uses
>   >     Windows, Messages, SysUtils, Variants, Classes, Dialogs;
>   >
>   >   type
>   >     TRaca = class
>   >     private
>   >       idRaca : integer;
>   >       descricao: string;
>   >       porte: string;
>   >       especie: string;
>   >     protected
>   >     public
>   >       constructor Create;
>   >       destructor Destroy; override;
>   >
>   >       procedure ObterRacas();
>   >       procedure IncluirRaca(descricao: string;porte: string;especie:
>string);
>   >       function LocalizarRaca(desc:string): string;
>   >     end;
>   >
>   >
>   >
>   >   implementation
>   >
>   >
>   >   constructor TRaca.Create;
>   >   begin
>   >   //  inherited Create;
>   >   //  idRaca := 0;
>   >   //  descricao:= '';
>   >   //  porte:= '';
>   >   //  especie:= '';
>   >   end;
>   >
>   >   destructor TRaca.Destroy;
>   >   begin
>   >   //  inherited Destroy;
>   >   end;
>   >
>   >   procedure TRaca.ObterRacas();
>   >   begin
>   >   //  Fazer a conexão com o bd para obter todas as raças
>   >     ShowMessage('Em construção');
>   >   end;
>   >
>   >   procedure TRaca.IncluirRaca(descricao: string;porte:
>string;especie: string);
>   >   begin
>   >   //  Fazer a conexão com o bd para incluir um cadastro de raça
>   >     ShowMessage('Em construção');
>   >   end;
>   >
>   >   function TRaca.LocalizarRaca(desc:string): string;
>   >   begin
>   >   //  Fazer a conexão com o bd para localizar uma determinada raça
>   >     ShowMessage('Em construção');
>   >   end;
>   >
>   >   end.
>
>
>
>   --
>   <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
>
>   Para ver as mensagens antigas, acesse:
>   http://br.groups.yahoo.com/group/delphi-br/messages
>
>   Para falar com o moderador, envie um e-mail para:
>   [EMAIL PROTECTED] ou [EMAIL PROTECTED]
>
>
>
>
>
>------------------------------------------------------------------------
>------
>
>   Links do Yahoo! Grupos
>
>     a.. Para visitar o site do seu grupo na web, acesse:
>     http://br.groups.yahoo.com/group/delphi-br/
>
>     b.. Para sair deste grupo, envie um e-mail para:
>     [EMAIL PROTECTED]
>
>     c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
>Serviço do Yahoo!.
>
>
>
>[As partes desta mensagem que não continham texto foram removidas]
>
>
>
>--
><<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
>
>Para ver as mensagens antigas, acesse:
>http://br.groups.yahoo.com/group/delphi-br/messages
>
>Para falar com o moderador, envie um e-mail para:
>[EMAIL PROTECTED] ou [EMAIL PROTECTED]
>
>
>
>
>   _____
>
>Links do Yahoo! Grupos
>
>
>*      Para visitar o site do seu grupo na web, acesse:
>http://br.groups.yahoo.com/group/delphi-br/
>
>
>*      Para sair deste grupo, envie um e-mail para:
>[EMAIL PROTECTED]
><mailto:[EMAIL PROTECTED]>
>
>
>*      O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
>Serviço do Yahoo! <http://br.yahoo.com/info/utos.html> .
>
>
>
>
>[As partes desta mensagem que não continham texto foram removidas]
>

_________________________________________________________________
MSN Messenger: converse online com seus amigos .  
http://messenger.msn.com.br



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a