Fórum Como mudar o modo de Ediçao do Dataset ? #333697
25/11/2006
0
Dataset not in Edit ou Insert Mode.
Como faço pra mudar esse modo de Edição, para assim controlar a Visibilidade de um Botão ´Salvar Alterações´ como a funçao do Dataset Post. Tipo como funciona a Visibilidade do DBNavigator.
Laelsonc
Curtir tópico
+ 1Posts
25/11/2006
Marco Salles
Se netendi... Tres tecnicas entre outras:
1)
Não daria: ???
2)
[b:be8b643fde]Geralmente eu uso uma procedure Bloqueio No proprio Form[/b:be8b643fde] ...Evita que no datamodulo voce fique fazendo referencias aos componentes de outro formulário..
Ainda tem outra tecnica.. Testar o estado do dataset para assim impedir ou não a exceução do codigo do Botão:
3)
Gostei + 0
25/11/2006
Laelsonc
Obrigadão !!
Gostei + 0
25/11/2006
Martins
Não sei se te serve mas vc poderia procurar implementar algo em: OnDataChange.
procedure TFxxxx.DSCliDataChange(Sender: TObject; Field: TField); begin with ClientDataSet do begin Incluir.Enabled := (State = dsBrowse); Editar.Enabled := (State = dsBrowse) and (not IsEmpty); Excluir.Enabled := (State = dsBrowse) and (not IsEmpty); OK.Enabled := (State <> dsBrowse); Cancel.Enabled := (State <> dsBrowse); First.Enabled := (not Bof) and (State = dsBrowse); Prior.Enabled := (not Bof) and (State = dsBrowse); Next.Enabled := (not Eof) and (State = dsBrowse); Last.Enabled := (not Eof) and (State = dsBrowse); end; end;
Assim vc controla o estado dos seus botões semelhante ao q faz o DBNavigator.
Boa sorte!!!!
Gostei + 0
25/11/2006
Paullsoftware
Não sei se te serve mas vc poderia procurar implementar algo em: OnDataChange.
procedure TFxxxx.DSCliDataChange(Sender: TObject; Field: TField); begin with ClientDataSet do begin Incluir.Enabled := (State = dsBrowse); Editar.Enabled := (State = dsBrowse) and (not IsEmpty); Excluir.Enabled := (State = dsBrowse) and (not IsEmpty); OK.Enabled := (State <> dsBrowse); Cancel.Enabled := (State <> dsBrowse); First.Enabled := (not Bof) and (State = dsBrowse); Prior.Enabled := (not Bof) and (State = dsBrowse); Next.Enabled := (not Eof) and (State = dsBrowse); Last.Enabled := (not Eof) and (State = dsBrowse); end; end;
Assim vc controla o estado dos seus botões semelhante ao q faz o DBNavigator.
Boa sorte!!!![/quote:96663057ca]
é exatamente assim de faço, não tem dor de cabeça nenhuma... simples e objetivo! :wink:
Gostei + 0
25/11/2006
Marco Salles
No datamodulo eu tento usar somente codigos relativos ao datasets , datasourcs , enfim compontes ligados ao mesmo
Em tremos práticos isto equivale a ter um procedure Bloqeuio , que habilita ou desabilita os botões atraves do enable
Mas pessoalmente também não gosto , pois o visual do form fica meio que feio , com os botoes acizentados , ainda mais quando esses botoes tem Imagems , dando um toque especial no formulário
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)