Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-01-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
Como soy casi adivino, lo sabia, abres la tabla en el formshow, que es casi lo mismo que el formcreate.
Solucion:
Coloca un nuevo boton (Actualiza).
y el codigo quedaria asi:
Código Delphi [-]
unit UAsignatura;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, DB, Mask, DBCtrls, Buttons, ComCtrls, Grids,
DBGrids;
type
TFAsignatura = class(TForm)
Label1: TLabel;
EdCodigoas: TDBEdit;
DataSource1: TDataSource;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
GroupBox1: TGroupBox;
Label7: TLabel;
Edcodigoemp: TDBEdit;
Image1: TImage;
CBNombreas: TDBComboBox;
CBGradoas: TDBComboBox;
CBCicloas: TDBComboBox;
CBNivelas: TDBComboBox;
CBSemestreas: TDBComboBox;
BtnNuevo: TBitBtn;
BtnGuardar: TBitBtn;
BtnModificar: TBitBtn;
BtnEliminar: TBitBtn;
BtnSalir: TBitBtn;
Panel1: TPanel;
StatusBar1: TStatusBar;
Label8: TLabel;
DBEdit1: TDBEdit;
DataSource2: TDataSource;
Label9: TLabel;
DBEdit2: TDBEdit;
DBGAsignatura: TDBGrid;
Panel2: TPanel;
procedure BtnNuevoClick(Sender: TObject);
procedure EdCodigoasKeyPress(Sender: TObject; var Key: Char);
procedure CBGradoasKeyPress(Sender: TObject; var Key: Char);
procedure CBCicloasKeyPress(Sender: TObject; var Key: Char);
procedure CBNombreasKeyPress(Sender: TObject; var Key: Char);
procedure CBNivelasKeyPress(Sender: TObject; var Key: Char);
procedure CBSemestreasKeyPress(Sender: TObject; var Key: Char);
procedure EdcodigoempKeyPress(Sender: TObject; var Key: Char);
procedure BtnGuardarClick(Sender: TObject);
procedure BtnModificarClick(Sender: TObject);
procedure BtnEliminarClick(Sender: TObject);
procedure BtnSalirClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure BtnCtualizaClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FAsignatura: TFAsignatura;
implementation
uses UDTM;
{$R *.dfm}

// aqui empieza la parte nueva
procedure TFAsignatura.BtnActualizaClick(Sender: TObject);
begin
dtm.ASIGNATURA.Close;
dtm.ASIGNATURA.Open;
end;
// aqui termina

procedure TFAsignatura.BtnNuevoClick(Sender: TObject);
begin
// dtm.ASIGNATURA.Open; ya esta abierta la tabla en el FormShow
dtm.ASIGNATURA.Insert;
// dtm.ASIGNATURA.Edit; esto es innecesario
Edcodigoas.Enabled:=true;
CBNombreas.Enabled:=true;
CBGradoas.Enabled:=true;
CBCicloas.Enabled:=true;
CBNivelas.Enabled:=true;
CBSemestreas.Enabled:=true;
EdCodigoemp.Enabled:=true;
end;
procedure TFAsignatura.EdCodigoasKeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
begin
CBNombreas.SetFocus;
end;
end;
procedure TFAsignatura.CBGradoasKeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
begin
CBcicloas.SetFocus;
end;
end;
procedure TFAsignatura.CBCicloasKeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
begin
CBNivelas.SetFocus;
end;
end;
procedure TFAsignatura.CBNombreasKeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
begin
CBgradoas.SetFocus;
end;
end;
procedure TFAsignatura.CBNivelasKeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
begin
CBsemestreas.SetFocus;
end;
end;
procedure TFAsignatura.CBSemestreasKeyPress(Sender: TObject;
var Key: Char);
begin
if key = #13 then
begin
EdCodigoemp.SetFocus;
end;
end;
procedure TFAsignatura.EdcodigoempKeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
begin
btnGuardar.SetFocus;
end;
end;
procedure TFAsignatura.BtnGuardarClick(Sender: TObject);
begin
dtm.ASIGNATURA.Post;
Edcodigoas.Enabled:=false;
CBNombreas.Enabled:=false;
CBGradoas.Enabled:=false;
CBCicloas.Enabled:=false;
CBNivelas.Enabled:=false;
CBSemestreas.Enabled:=false;
EdCodigoemp.Enabled:=false;
btnguardar.SetFocus;
end;
procedure TFAsignatura.BtnModificarClick(Sender: TObject);
begin
if MessageDlg('Esta seguro que desea modificar este registro', mtInformation, [mbyes, mbno], 0) = mryes then
begin
// dtm.ASIGNATURA.Open;   Ya esta abierta
dtm.ASIGNATURA.Edit;
Edcodigoas.Enabled:=true;
CBNombreas.Enabled:=true;
CBGradoas.Enabled:=true;
CBCicloas.Enabled:=true;
CBNivelas.Enabled:=true;
CBSemestreas.Enabled:=true;
EdCodigoemp.Enabled:=true;
BtnGuardar.SetFocus;
end
end;
procedure TFAsignatura.BtnEliminarClick(Sender: TObject);
begin
if MessageDlg('Esta seguro que desea eliminar este registro', mtInformation, [mbyes, mbno], 0) = mryes then
begin
dtm.ASIGNATURA.Delete;
end
else
abort;
end;
procedure TFAsignatura.BtnSalirClick(Sender: TObject);
begin
Fasignatura.Close;
end;
procedure TFAsignatura.FormShow(Sender: TObject);
begin
dtm.ASIGNATURA.Open;
end;
end.
Espero lo entiendas.
Saludos
Responder Con Cita
  #2  
Antiguo 05-01-2008
Avatar de hamiltonfvi
hamiltonfvi hamiltonfvi is offline
Miembro
 
Registrado: ene 2008
Posts: 12
Poder: 0
hamiltonfvi Va por buen camino
dbgrid

gracias caral, pero la solucion q propones es practicamente la misma q utilizar el boton 'nuevo' o 'modificar'. Lo q nosotros queriamos es q el dbgrid nos trajera los datos al abrir la forma sin pulsar nada, pero ni modo, agregaremos el boton 'actualizar'. Gracias por todo.
Responder Con Cita
  #3  
Antiguo 05-01-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
No mal entiendas, el concepto es lo que importa.
No es necesario poner un boton, lo inportante es el concepto, eso lo puedes hacer en cualquier evento del form, no específicamente en un boton.
Lo puse asi, para que lo captaras, no para que fuera exactamente asi.
Saludos
Responder Con Cita
  #4  
Antiguo 05-01-2008
Avatar de hamiltonfvi
hamiltonfvi hamiltonfvi is offline
Miembro
 
Registrado: ene 2008
Posts: 12
Poder: 0
hamiltonfvi Va por buen camino
dbgrid solucionado

Mil gracias, ahora si entendi, funciona a las mil maravillas, no se que haria sin tu ayuda. Hey, por cierto, muy bueno el minitutorial q preparaste, gente como tu hacen falta para que el mundo sea un sitio mejor.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
MaskEdit NuncaMas Varios 11 07-01-2010 13:11:08
MaskEdit es la solucion? kepacha Varios 4 24-01-2005 13:07:22
MaskEdit!! JCarlos OOP 3 19-01-2005 20:45:32
MaskEdit scooterjgm OOP 5 20-09-2004 07:13:12
problema con maskedit superhopi OOP 1 12-05-2003 09:29:03


La franja horaria es GMT +2. Ahora son las 12:47:13.


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