Não consigo colocar o Edit.Text ou DBEdit em modo de edição.
 Ramos da Informática - Delphi
 Ramos da Informática - Delphi
 Ramos da Informática - Delphi
 Não consigo colocar o Edit.Text ou DBEdit em modo de edição.
  Registrar   Ajuda   Login

Tópico AnteriorTópico Anterior - Próximo TópicoPróximo Tópico
Tópico com 2037 visitas e 7 mensagens
Autor
Tópico: Não consigo colocar o Edit.Text ou DBEdit em modo de edição.
maurolima
Usuário Nivel 1

Postagens: 4
Registro: 29/11/2004
Local: rio de janeiro - RJ - Brasil
Idade: 54 anosSexo Masculino
 Postado em 29/11/2004 10:57:00 PM

BOA NOITE AMIGOS.

Sou novato em delphi, e estou fazendo uma pequena aplicação de Banco de dados interbase. Uma simples agenda com, nome telefone e email. Só que, não estou conseguindo fazer com que Edit.Text ou DBgrid, fiquem em modo de edição para eu poder incluir o nome, o telefone e o email ! Só consigo incluir registros, através do interbase (IBConsole). Ai sim, aparece os registros lá no delphi. O cursor fica piscando, mas não escreve nada no Edit ou dbgrid. O que está faltando fazer para isso funcionar ?
Se puderem me ajudar, ficaria agradecido.

mauro lima

IP LogadoPróxima Mensagem
m@gnun
Usuário Nivel 3

Postagens: 257
Registro: 04/11/2003
Local: Ourinhos - SP - Brasil
Idade: 30 anosSexo Masculino
 Postado em 30/11/2004 12:53:00 AM

Verifique a propriedade ReadOnly, ela deve estar como false.

Se for um DBEdit, vc tem que dar um Insert antes digitar algo nele.

IP LogadoMensagem AnteriorPróxima Mensagem
Wilian Selzlein
Usuário Nivel 5

Postagens: 1493
Registro: 21/11/2003
Local: Vacaria - RS - Brasil
Idade: 27 anosSexo Masculino
 Postado em 30/11/2004 8:12:00 AM

Sei que é bobagem, mas verifique se ele está conectado a tua tabela ou query...

IP LogadoMensagem AnteriorPróxima Mensagem
maurolima
Usuário Nivel 1

Postagens: 4
Registro: 29/11/2004
Local: rio de janeiro - RJ - Brasil
Idade: 54 anosSexo Masculino
 Postado em 30/11/2004 5:28:00 PM

Mensagem original postada por m@gnun Verifique a propriedade ReadOnly, ela deve estar como false.

Se for um DBEdit, vc tem que dar um Insert antes digitar algo nele.


O readOnly está certo( false). Como eu faço para colocar insert no DBEdit ?

Eu sei que tem que colocar um código, para entrar em modo de edição !

Os componentes estão todos no DataModule. Nome=DM.
O IBDataSet está como: IBDataSet1.

OBS: ESTOU USANDO:

IBQUERY - O NOME ESTÁ COMO : IBQUERY1.
TRANSACTION : TRANS.
, IBDATASET : IBDATASET1.
IBDATABASE : IBDATA.

OBRIGADO PELA ATENÇÃO E AGUARDO AJUDA DE TODOS.

MAURO LIMA


IP LogadoMensagem AnteriorPróxima Mensagem
m@gnun
Usuário Nivel 3

Postagens: 257
Registro: 04/11/2003
Local: Ourinhos - SP - Brasil
Idade: 30 anosSexo Masculino
 Postado em 02/12/2004 2:30:00 AM

1º- IBDataset1.Open; //Cuidado, pois se vc tiver um Select * from tabela no SQL, vão retornar um monte de registros, pessoalmente coloco uma sentença falsa, só para abri-lo mesmo.
2º- IBDataset1.Insert; //
3º- IBDataset1.Post;
4º- DM.Trans.Commit; // ou CommitRetaining;

Exixtem outras maneiras, eu basicamente faço assim, agora é só construir seu código com isso.



IP LogadoMensagem AnteriorPróxima Mensagem
maurolima
Usuário Nivel 1

Postagens: 4
Registro: 29/11/2004
Local: rio de janeiro - RJ - Brasil
Idade: 54 anosSexo Masculino
 Postado em 02/12/2004 10:08:00 AM

BOM DIA MAGNUM


QUANDO COLOCO AQUELES COMANDOS QUE VOCÊ ESCREVEU, QUANDO EU CLICO, APARECE UMA MENSAGEM DIZENDO "DATASET1 : CANNOT MODIFY A READ-ONLY DATASET". ELE DIZ QUE O DATASET NÃO PODE SER MODIFICADO, É SOMENTE LEITURA ! EU JÁ OLHEI O "READ ONLY" E ESTÁ CERTO (FALSO).

EU JÁ ESTOU DESESPERADO E NÃO SEI O QUE FAZER MAIS.

OBRIGADO PELA SUA PACIENCIA.


UM ABRAÇO

MAURO

IP LogadoMensagem AnteriorPróxima Mensagem
m@gnun
Usuário Nivel 3

Postagens: 257
Registro: 04/11/2003
Local: Ourinhos - SP - Brasil
Idade: 30 anosSexo Masculino
 Postado em 03/12/2004 1:02:00 AM

Olha, aparentemente era pra dar certo, siga passo a passo o q eu vou postar e depois veja onde está errado.

Vai no IBConsole, crie um BD e depois essa tabela :

CREATE TABLE "TESTE"
(
"CODIGO" INTEGER NOT NULL,
"NOME" VARCHAR(20),
CONSTRAINT "PK_TESTE_CODIGO" PRIMARY KEY ("CODIGO")
);

No delphi:

Coloque em um form, 1 IBDatabase, 1IBTransaction, 1IBDataset, 1 DataSourse, 1 DBNavigator e 3 Buttons.

Configure o path, o username, e password do BD no IBDatabase.
Conecte o IBDatabase ao IBTransaction.
Conecte o IBTransaction ao IBDatabase.
Conecte o IBDataset ao IBDatabase.
Conecte o DataSourse ao IBDataset.
Conecte o DBNavigator ao Datasourse.

Clique no IBDataset com o botao direito e escolha Edit SQL.
Coloque : - select * from TESTE e clique OK.
Clique no IBDataset com o botao direito e escolha Dataset Editor.
Vai aparecer uma janela, e no listbox Key Fields, selecione CODIGO e depois clique em Generete SQL. Isso vai construir os SQLs para Insert, Edit, Delete e Refresh.
De um duplo-click no IBDataset, clique com o botao direito na nova janela e escolha Add All Fields, Selecione os dois campos e arraste-os para o Form1. Vão ser criados 2 DBEdits e 2 Labels.

No Caption do Button1 coloque Abrir.
No Caption do Button2 coloque Inserir.
No Caption do Button3 coloque Gravar.

Insira esses codigos nos botões:

procedure TForm1.Button1Click(Sender: TObject);
begin

IBDataset1.Open;

end;

procedure TForm1.Button2Click(Sender: TObject);
begin

IBDataset1.Insert;

end;

procedure TForm1.Button3Click(Sender: TObject);
begin

IBDataset1.Post;
IBTransaction1.Commit;

end;

Teste na sequencia, Button1, Button2 e Button3.

Essa é a maneira mais fácil que conheço, não é a melhor, mas não é a pior, cada situação exige uma forma.

IP LogadoMensagem Anterior
 Todos os horários são de Brasília (GMT -03:00)
 Nova Mensagem desde a sua Última Visita.
[***] Palavra proibida pelo moderador do Grupo de Discussão

Tópico AnteriorTópico Anterior - Próximo TópicoPróximo Tópico

Volta para o Topo da Página



Forum Now! - Criar seu forum grátis