Teste de campo e voltar o foco para o componente
Senhores;
Tenho uma função em uma unit (funcoes) no qual encontra-se todas as funções de meu projeto dentre elas...
function testcampo( campo:string ) :string;
begin
if campo= ´´ then
begin
campobrig;
/// focar o campo
abort;
end;
end;
Gostaria que caso o campo fosse vazio ele retornasse o foco para o campo em teste. Mas como fazer ?
Tenho uma função em uma unit (funcoes) no qual encontra-se todas as funções de meu projeto dentre elas...
function testcampo( campo:string ) :string;
begin
if campo= ´´ then
begin
campobrig;
/// focar o campo
abort;
end;
end;
Gostaria que caso o campo fosse vazio ele retornasse o foco para o campo em teste. Mas como fazer ?
Midas
Curtidas 0
Respostas
Motta
09/02/2004
é mais fácil na chamada
function testcampo( campo:string ) :string;
begin
result := (campo= ´´ );
end;
na chamada
if testcampo(edit1.text) then
if edit1.canfocus then
edit1.setfocus;
outra maneira seria a function receber um TWinControl, ou TControl , mas acho complicado demais para o que se quer fazer
function testcampo( campo:string ) :string;
begin
result := (campo= ´´ );
end;
na chamada
if testcampo(edit1.text) then
if edit1.canfocus then
edit1.setfocus;
outra maneira seria a function receber um TWinControl, ou TControl , mas acho complicado demais para o que se quer fazer
GOSTEI 0
Henry.fartura
09/02/2004
Na minha opinião seria mais fácil usar o onValidade do campo e usar o seguinte comando: table1CODIGO.FocusControl;
GOSTEI 0
Henry.fartura
09/02/2004
Na minha opinião seria mais fácil usar o onValidade do campo e usar o seguinte comando: table1CODIGO.FocusControl;
lembrando que o controle deve ser um DBedit ou semelhante.
[]´s
Fabio
lembrando que o controle deve ser um DBedit ou semelhante.
[]´s
Fabio
GOSTEI 0
Midas
09/02/2004
Como vc disse mota...
function testcampo( campo:twincontrol;s_formulario:TCustomForm) :string;
begin
if campo is tcustomedit then
begin
if s_formulario.campo.text = ´´ then
begin
campobrig;
s_formulario.campo.SetFocus;
abort;
end;
end;
end;
Porem dá erro
[Error] Funcoes_u.pas(445): Undeclared identifier: ´campo´
function testcampo( campo:twincontrol;s_formulario:TCustomForm) :string;
begin
if campo is tcustomedit then
begin
if s_formulario.campo.text = ´´ then
begin
campobrig;
s_formulario.campo.SetFocus;
abort;
end;
end;
end;
Porem dá erro
[Error] Funcoes_u.pas(445): Undeclared identifier: ´campo´
GOSTEI 0
Motta
09/02/2004
function testcampo( campo:twincontrol;s_formulario:TCustomForm) :string;
begin
if campo is tcustomedit then
begin
if s_formulario.campo.text = ´´ then
begin
campobrig;
//s_formulario.campo.SetFocus;
if campo.canfocus then
campo.SetFocus;
abort;
end;
end;
end;
begin
if campo is tcustomedit then
begin
if s_formulario.campo.text = ´´ then
begin
campobrig;
//s_formulario.campo.SetFocus;
if campo.canfocus then
campo.SetFocus;
abort;
end;
end;
end;
GOSTEI 0