Cannot focus a disabled or invisible window??? (URGENTE)

16/07/2020

0

Em uma aplicação de cadastro de cliente, quando clico em salvar ou clico em novo duas vezes acontece esse erro, abaixo segue o código, alguém me ajuda por favor

unit Clientes;

interface

uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Menus, Vcl.ComCtrls, Vcl.StdCtrls,
cxGraphics, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore,
dxSkinsDefaultPainters, cxControls, cxStyles, cxCustomData, cxFilter, cxData,
cxDataStorage, cxEdit, cxNavigator, dxDateRanges,
cxDataControllerConditionalFormattingRulesManagerDialog, Data.DB, cxDBData,
cxCalendar, Vcl.Grids, Vcl.DBGrids, Vcl.DBCtrls, Vcl.ExtCtrls, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxGridCustomView, cxGrid, cxButtons, Vcl.Buttons, ISFEdit, ISFEditbtn,
ISFdbEditbtn, IDBEdit, uEstSearchDialogZeos, Vcl.Mask, cxContainer, cxGroupBox,
cxTextEdit, cxMemo, cxRichEdit;

type
TFrmClientes = class(TForm)
lb_cnpj_cpf: TLabel;
lb_ie_rg: TLabel;
lb_razao_social: TLabel;
lb_fantasia: TLabel;
lb_telefone: TLabel;
lb_celular: TLabel;
lb_contato: TLabel;
lb_email: TLabel;
lb_bairro: TLabel;
lb_complemento: TLabel;
lb_numero: TLabel;
lb_endereco: TLabel;
lb_cep: TLabel;
btn_sair: TcxButton;
btn_consultar: TcxButton;
btn_alterar: TcxButton;
btn_novo: TcxButton;
btn_salvar: TcxButton;
btn_excluir: TcxButton;
edt_fantasia: TDBEdit;
edt_razao_social: TDBEdit;
edt_cnpj: TDBEdit;
edt_cep: TDBEdit;
edt_endereco: TDBEdit;
edt_numero: TDBEdit;
edt_bairro: TDBEdit;
edt_complemento: TDBEdit;
edt_telefone: TDBEdit;
edt_celular: TDBEdit;
edt_contato: TDBEdit;
edt_ie_rg: TDBEdit;
edt_id: TDBEdit;
lb_id: TLabel;
procedure btn_novoClick(Sender: TObject);
procedure btn_salvarClick(Sender: TObject);
procedure btn_sairClick(Sender: TObject);
procedure btn_consultarClick(Sender: TObject);

private
{ Private declarations }
public
{ Public declarations }
end;

var
FrmClientes: TFrmClientes;

implementation

{$R *.dfm}

uses modulo, Consulta.Clientes;


procedure TFrmClientes.btn_consultarClick(Sender: TObject);
begin
FrmConsultaClientes := TFrmConsultaClientes.Create(Self);
FrmConsultaClientes.ShowModal;
FrmConsultaClientes.Free;
end;

procedure TFrmClientes.btn_novoClick(Sender: TObject);
begin
DM_Dados.tb_clientes.Insert;

end;


procedure TFrmClientes.btn_sairClick(Sender: TObject);
begin
FrmClientes.Close;
end;

procedure TFrmClientes.btn_salvarClick(Sender: TObject);
begin
DM_Dados.tb_clientes.Post;
ShowMessage('Cliente salvo com sucesso')
end;

end.
Ze Horllando

Ze Horllando

Responder

Post mais votado

17/07/2020

Esqueçi de mencionar nas propriedades do dbedit.text. tem uma opçao chamada VISIBLE se estive false coloque true !

Roberto Castelani

Roberto Castelani
Responder

Mais Posts

17/07/2020

Pedro Campos

Ze Horllando, veja se esta modificação é melhor:

procedure TFrmClientes.btn_consultarClick(Sender: TObject);
begin
FrmConsultaClientes := TFrmConsultaClientes.Create(Self);
try
FrmConsultaClientes.ShowModal;
finally
FrmConsultaClientes.Free;
// eu prefiro FreeAndNil(FrmConsultaClientes);
end;
end;
Responder

17/07/2020

Roberto Castelani

Em uma aplicação de cadastro de cliente, quando clico em salvar ou clico em novo duas vezes acontece esse erro, abaixo segue o código, alguém me ajuda por favor

unit Clientes;

interface

uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Menus, Vcl.ComCtrls, Vcl.StdCtrls,
cxGraphics, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore,
dxSkinsDefaultPainters, cxControls, cxStyles, cxCustomData, cxFilter, cxData,
cxDataStorage, cxEdit, cxNavigator, dxDateRanges,
cxDataControllerConditionalFormattingRulesManagerDialog, Data.DB, cxDBData,
cxCalendar, Vcl.Grids, Vcl.DBGrids, Vcl.DBCtrls, Vcl.ExtCtrls, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxGridCustomView, cxGrid, cxButtons, Vcl.Buttons, ISFEdit, ISFEditbtn,
ISFdbEditbtn, IDBEdit, uEstSearchDialogZeos, Vcl.Mask, cxContainer, cxGroupBox,
cxTextEdit, cxMemo, cxRichEdit;

type
TFrmClientes = class(TForm)
lb_cnpj_cpf: TLabel;
lb_ie_rg: TLabel;
lb_razao_social: TLabel;
lb_fantasia: TLabel;
lb_telefone: TLabel;
lb_celular: TLabel;
lb_contato: TLabel;
lb_email: TLabel;
lb_bairro: TLabel;
lb_complemento: TLabel;
lb_numero: TLabel;
lb_endereco: TLabel;
lb_cep: TLabel;
btn_sair: TcxButton;
btn_consultar: TcxButton;
btn_alterar: TcxButton;
btn_novo: TcxButton;
btn_salvar: TcxButton;
btn_excluir: TcxButton;
edt_fantasia: TDBEdit;
edt_razao_social: TDBEdit;
edt_cnpj: TDBEdit;
edt_cep: TDBEdit;
edt_endereco: TDBEdit;
edt_numero: TDBEdit;
edt_bairro: TDBEdit;
edt_complemento: TDBEdit;
edt_telefone: TDBEdit;
edt_celular: TDBEdit;
edt_contato: TDBEdit;
edt_ie_rg: TDBEdit;
edt_id: TDBEdit;
lb_id: TLabel;
procedure btn_novoClick(Sender: TObject);
procedure btn_salvarClick(Sender: TObject);
procedure btn_sairClick(Sender: TObject);
procedure btn_consultarClick(Sender: TObject);

private
{ Private declarations }
public
{ Public declarations }
end;

var
FrmClientes: TFrmClientes;

implementation

{$R *.dfm}

uses modulo, Consulta.Clientes;


procedure TFrmClientes.btn_consultarClick(Sender: TObject);
begin
FrmConsultaClientes := TFrmConsultaClientes.Create(Self);
FrmConsultaClientes.ShowModal;
FrmConsultaClientes.Free;
end;

procedure TFrmClientes.btn_novoClick(Sender: TObject);
begin
DM_Dados.tb_clientes.Insert;

end;


procedure TFrmClientes.btn_sairClick(Sender: TObject);
begin
FrmClientes.Close;
end;

procedure TFrmClientes.btn_salvarClick(Sender: TObject);
begin
DM_Dados.tb_clientes.Post;
ShowMessage('Cliente salvo com sucesso')
end;

end.



Bom dia ;

Então verifique se os componentes dbedit.text estão todos enabled:= false , (coloque TRUE) pois se estiverem quando vc dé um insert na tabela o ponteiro para vc digita não
vai ter para onde ir e vai acabar retornando essa menssagem , aparentemente não vi nada no seu código que possa gerar esse erro, porém de uma olhada na propriedade do dbedit.text ! e coloque true:
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar