안녕하세요. 항상 도움만 받고 있는 초보 델파이 사용자 입니다.
다시 한번 도움을 청하게 되었네요.
저희 프로그램은 여러 폼에서 날짜 체크를 해야 합니다.
그래서 DM에 프로시저를 선언하고 여러 폼에서 날짜 체크를 하고있습니다.
그런데 날짜 오류체크를 하면 메시지를 띄워 주고 포커스를 이벤트가 일어난 컴포넌트(예.Tedit,Tmaskedit)
등에 포커스를 다시 주어야 합니다.
그래서 현재에는 포커스를 주는 과정을 각컴포넌트 에서 처리를 하고 있습니다.
그런데 제 생각에는요
현재 DM의 프로시저의 매개변수로 위에서 말한 컴포넌트 객체를 넣어서 포커스를 주는 과정을 DM의 프로시저 내에서 처리 가능하게 할수도 있을 것 같아서요.. 가능한가요?
그리고 위의 방법이 가능하다면
DM에서의 프로 시저 매개변수를 어떻게 기술하면 가능한가요. (선언부의 매개변수명,구현부내의 실제 컴포넌트기술명)
또 각폼의 컴포넌트는 DM의 프로시저에 객체 자신을 어떻게 매개변수로 넘기면 되나요.
var
temp_string : string;
begin
temp_string := '';
if Sender is Tedit then begin
temp_string := Tedit(Sender).text;
Tedit(Sender).SetFocus;
end;
if Sender is TMaskedit then begin
temp_string := TMaskedit(Sender).text;
TMaskedit(Sender).SetFocus;
end;
if temp_string <> '' then begin
날짜 체크
end;
end;