Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Sobre DBCheckBox (https://www.clubdelphi.com/foros/showthread.php?t=10225)

silviodp 13-05-2004 14:28:46

Sobre DBCheckBox
 
En mi aplicacion tengo un DBCheckBox, y no puedo logar que este me aparezca destildado, osea que cuando ejecuto mi aplicación me aparece tildado y en gris, es decir tengo que hacer tres click para que me aprarezca destildado y no es esto lo que quiero que haga, por su puesto.
Estoy trabajando con Paradox 7 y Delphi 5.
También les comento que éste componente tiene su propiedad Enabled:=True; y en ejecución asigno a su propiedad Checked:=False;, pero lo mismo lo hace.
Gracias.

Silvio.-

marcoszorrilla 13-05-2004 14:35:20

Esto ocurre porque los registros que tienes grabados en la base de datos no contienen ningún valor para dicho campo.

Para las nuevas altas, lo arreglas así.

En el eventor:
OnNewRecord del campo en cuestion:
Código Delphi [-]
MiTablaMiCampo.Value:=False;

Un Saludo.

silviodp 13-05-2004 16:38:27

Sobre DBCheckBox
 
En que evento tengo que poner el codigo para que cuando tildo el componente (DBCheckBox) me habilite por ejemplo un boton o el componete que sea.-
Gracias.

Silvio.-

marcoszorrilla 13-05-2004 17:10:32

Tienes que programar el evento OnClick:
Código Delphi [-]
 procedure TForm1.DBCheckBox1Click(Sender: TObject);
 begin
 button1.enabled:=Not(button1.Enabled);
 end;

Un Saludo.

silviodp 13-05-2004 23:16:03

Sobre DBCheckBox
 
Probé como vos me indicaste anda pero el tema esta cuando quiero modificar un registro donde el componente DBCheckBox está tildado, me da error mi aplicacion y el compilador me señala el evento OnClick de éste componente.Es decir aca:
Código:

procedure TForm10.BajaClick(Sender: TObject);
begin
 If Form10.Baja.Checked=True Then
  begin
    Form10.Label10.Enabled:=True;
    Form10.DBEdit9.Enabled:=True;
    Form10.Label11.Enabled:=True;
    Form10.DBComboBox1.Enabled:=True;
  end
 Else
  If Form10.Baja.Checked=False Then
  begin
    Form10.Label10.Enabled:=False;
    Form10.DBEdit9.Enabled:=False;
    Form10.Label11.Enabled:=False;
    Form10.DBComboBox1.Enabled:=False;
  end;
end;

El boton Modificar ejecuta el siguiente procediemineto:
Código:

procedure TForm7.ModificarClick(Sender: TObject);
begin
 Form10:=TForm10.Create(Self);
 ModeloDatos.TblMueble.Edit;
end;

Gracias.

marcoszorrilla 13-05-2004 23:26:57

Puedes decir exactamente que error te da?

Un Saludo.

sanxpue 14-05-2004 02:13:13

Ups...
 
Ups.. y mas Ups..

Para empezar

Código:

procedure TForm10.BajaClick(Sender: TObject);
begin
 If Form10.Baja.Checked=True Then
  begin
    Form10.Label10.Enabled:=True;
    Form10.DBEdit9.Enabled:=True;
    Form10.Label11.Enabled:=True;
    Form10.DBComboBox1.Enabled:=True;
  end
 Else
  If Form10.Baja.Checked=False Then
  begin
    Form10.Label10.Enabled:=False;
    Form10.DBEdit9.Enabled:=False;
    Form10.Label11.Enabled:=False;
    Form10.DBComboBox1.Enabled:=False;
  end;
end;

Puede quedar
Código:

procedure TForm10.BajaClick(Sender: TObject);
begin
  Label10.Enabled := Baja.Checked;
  DBEdit9.Enabled := Baja.Checked;
  Label11.Enabled := Baja.Checked;
  DBComboBox1.Enabled := Baja.Checked;
end;

y me imagino que ese codigo esta dentro de la Form10 ¡¡verdad¡¡

Ahora veo que aqui creas
Código:

procedure TForm7.ModificarClick(Sender: TObject);
begin
 Form10:=TForm10.Create(Self);
 ModeloDatos.TblMueble.Edit;
end;

Y despues que pasa ???
Adivina Adivinador..
Y seguimos pidiendo los cursos
:(

silviodp 17-05-2004 14:38:46

Sobre DBCheckBox
 
El error que me da es el siguiente:

"Acces violation at address 004D31F7 in module 'CSTOCK.EXE'. Read for address FFFFFFFF."

Eso cuando quiero modificar un registro que fue tildado.
Gracias.

Silvio.-

marcoszorrilla 17-05-2004 15:05:48

Cita:

procedure TForm7.ModificarClick(Sender: TObject);
begin
Form10:=TForm10.Create(Self);
ModeloDatos.TblMueble.Edit;
end;
....

Cita:

procedure TForm7.ModificarClick(Sender: TObject);
begin
ModeloDatos.TblMueble.Edit;
Form10:=TForm10.Create(Self);
end;
Tienes que poner en edición los datos antes de llamar para hacer la modificación, lo que estás haciendo como ves es lo contrario.

Un Saludo.


La franja horaria es GMT +2. Ahora son las 21:28:10.

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