전에두 한번 올린질문인데.. 답변이 없어서 다시 올립니다.
DBEdit에서 현재 입력중인 필드의 포커스를 이동시키지 않고
입력된 내용을 필드에 반영하는 방법이 없나요?
다음과 같은 경우일때입니다.
DBEdit1의 OnKeyDown이벤트에서 다음과 같이 하였을때..
if key = vk_Return then begin
table1['field2'].value := table1['field1'].value*10;
여기서 field2는 DBEdit2와 연결이 되있다면..
DBEdit1의 원래 값(그러니까 table['field1'].value의 값)이
10이었을때 20이라구 바꾸고 엔터를 치면 위의 코드가 수행
되서 field2의 값에 200이 들어가야 하잖아요?
그런데 입력된 20의 값이 바뀌지 않고 그대로 10으로 남아
있습니다. 그러므로 결과가 100이 들어가더군요. DBEdit의 포
커스가 다른곳으로 옮겨가지 않으면 입력된 값이 반영이 않됩니다.
요거 좋은 해결방법이 없을까요?
|