Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-07-2006
Avatar de johurgi
johurgi johurgi is offline
Miembro
 
Registrado: jul 2006
Posts: 95
Poder: 18
johurgi Va por buen camino
Problema de Access Violation

Buenas.

Soy nuevo en esto de delphi, y tengo un problemilla a la hora de acceder a los datos de una clase contenida dentro de una unidad.

Aqui os muestro el codigo.

Unit2(Clase TCuentaBancaria)
Código Delphi [-]
unit Unit2;
interface

type
  TCuentaBancaria = class(TObject)

  private
  TNumCuenta:string;
  TSaldoCta:currency;
  TTipoCuenta:string;
  public
  constructor Create(TNumCuenta:string;TSaldoCta:currency;TTipoCuenta:string);
  function Numero():string;
  function Saldo():currency;
  function Tipo():string;
  procedure Ver();
  
  end;

implementation
constructor TCuentaBancaria.Create(TNumCuenta:string;TSaldoCta:currency;TTipoCuenta:string);
begin
Self.TNumCuenta:=TNumCuenta;
Self.TSaldoCta:=TSaldoCta;
Self.TTipoCuenta:=TTipoCuenta;
end;

function TCuentaBancaria.Numero():string;
begin
result :=TNumCuenta
end;

function TCuentaBancaria.Saldo():currency;
begin
result := TSaldoCta
end;

function TCuentaBancaria.Tipo():string;
begin
result := TTipoCuenta
end;

procedure TCuentaBancaria.Ver();
begin
end;

end.

El formulario desde dondo accedo a la clase es el siguiente:
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs,Unit2, StdCtrls, Mask;

type
  TForm1 = class(TForm)
    MaskEdit1: TMaskEdit;
    MaskEdit2: TMaskEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    ComboBox1: TComboBox;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    procedure FormShow(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    function ValidarDatos():boolean;
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);

  private

  public
    
  end;

var
  Form1: TForm1;
  CB:TCuentaBancaria;
  TipoC:Array[1..2] of string;
  nc:string;
  sc:currency;
  tp:string;

implementation

{$R *.dfm}

procedure TForm1.FormShow(Sender: TObject);
var
  i:integer;
begin
TipoC[1]:='Corriente';
TipoC[2]:='Ahorro';
for i:=1 to 2 do
  Form1.ComboBox1.Items.Add(TipoC[i]);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
if Form1.ValidarDatos()=True then
begin
  TCuentaBancaria.Create(nc,sc,tp);
  //CB.Create(nc,sc,tp);
  ShowMessage('Cuenta bancaria creada');
end
  else ShowMessage('Datos mal introducidos');

end;
function TForm1.ValidarDatos():boolean;
begin
if Form1.MaskEdit1.Text <>'' then
  if Form1.MaskEdit2.Text <> '' then
    if Form1.ComboBox1.Text <> 'Tipo de Cuenta' then
    begin
    nc:=Form1.MaskEdit1.Text;
    sc:=strtocurr(Form1.MaskEdit2.Text);
    tp:=Form1.ComboBox1.Text;
    ValidarDatos :=True;
    end
    else ValidarDatos:=False
  else ValidarDatos:=False
else ValidarDatos:=False;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
try
ShowMessage(CB.Numero);
finally
end;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
try
ShowMessage(CurrToStr(CB.Saldo));
finally
end;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
try
ShowMessage(CB.Tipo)
finally
end;
end;

end.

Me da un error de access violation, cuando despues de crear el objeto "TCuentaBancaria" intento consultar alguno de los valores que le he introducido y no encuentro el porque me da ese error.

Si alguien me puede echar una mano se lo agradeceria.

Un saludo
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Access Violation Carliviris Varios 5 12-05-2006 19:21:45
Problema con Quick report 'Access Violation at address 00575B9B in module' danielcordovahe Varios 3 13-05-2005 00:51:08
access violation chilenauta Impresión 15 15-12-2004 19:45:51
Access Violation ..... MADV01 Varios 2 24-03-2004 16:01:33
Access violation Giasl Varios 6 07-05-2003 12:35:51


La franja horaria es GMT +2. Ahora son las 07:39:51.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi