Q&A

  • TField 클래스의 코딩법(?) 제목이 좀 이상하네요...
안녕하세요. 까마귀입니다.

비 그치고 나니 좀 상쾌하지 않으세요? 남은 하루라도 그렇게 보내시길...



const

NALJA_YES : 1

NALJA_NO : 0



procedure Tdm_Closing.q_IdJDATEChange(Sender: TField);

begin

if Length(q_IdJdate.AsString) = 6 then

begin

if StrToInt(Copy(q_IdJdate.AsString,1,2)) > 10 then

q_IdJdate.AsString := '19' + q_IdJdate.AsString

else q_IdJdate.AsString := '20' + q_IdJdate.AsString;

if DateChk(q_IdJdate.AsString) = NALJA_NO then

ShowMessage('날짜 입력 오류입니다.');

end;

end;



위처럼 TField 의 OnChanged 이벤트에서 날짜 입력 및 점검하는 코드를 만들었는데요.

DateChk 함수는 날짜 점검인데 따로 적지는 않았습니다.

물어보려는 것은요, 위와 같은 기능을 가져야 하는 TField가 5개 있어요.

이게 전부 DBGrid에서 표시가 되는 것입니다.

Query로 불러온것인데요, 각각의 이름만 틀릴 뿐이지 코딩 소스는 다 같습니다.

이럴경우에 위처럼 이름을 쓰지 않고 코딩해서 5개의 TField가 같은 소스를 공유하는수가 없나요?

말하자면 TComboBox(ActiveControl).DroppedDown 뭐 이런식으로 적을수가 없냔느 겁니다.

q_IdJdate.AsString 이것을 TField(ActiveControl).AsString 로 적으니까 에러가 나데요.

제가 이런식으로 적는방법이 있다고만 알지 어떤경우에 어떻게 적어야 한다는 것에는 쑥맥입니다.

어떤식으로 하는지 방법을 알려주시면 무척 감사하겠습니다.

그리고, 위와 같은 - TComboBox(ActiveControl).... - 코딩법은 어떻게 구현하는가를 알려주실수 있으면 더욱 고맙겠습니다. 아님 그런 사이트가 있는 곳등....

그럼 수고하세요.

꾸벅~~.







위대한 단군혼이 살아있는 나라.... 대한민국.

2  COMMENTS
  • Profile
    nilriri 2000.04.27 02:31
    테이블 컴포넌트에서 더블클릭하면 나오는 필드에디트 창에서 필드를 모두 선택하구요

    오브젝트 인스펙터에서 이벤트 탭의 첫번째 이벤트인 on change에 myChange라고

    입력하시고 엔터를 치면 다음과 같은 프로시져가 생깁니다.

    여기에 show...처럼 원하는 코딩을 하시면

    이벤트를 기술할때 선택했던 모든 필드에 대해서 모두 똑같은 프로시져가

    적용이 됩니다.



    그럼 좋은 결과있기를...



    procedure TForm1.myChange(Sender: TField);

    begin

    showmessage(sender.asstring);

    end;



    end.





    > 안녕하세요. 까마귀입니다.

    > 비 그치고 나니 좀 상쾌하지 않으세요? 남은 하루라도 그렇게 보내시길...

    >

    > const

    > NALJA_YES : 1

    > NALJA_NO : 0

    >

    > procedure Tdm_Closing.q_IdJDATEChange(Sender: TField);

    > begin

    > if Length(q_IdJdate.AsString) = 6 then

    > begin

    > if StrToInt(Copy(q_IdJdate.AsString,1,2)) > 10 then

    > q_IdJdate.AsString := '19' + q_IdJdate.AsString

    > else q_IdJdate.AsString := '20' + q_IdJdate.AsString;

    > if DateChk(q_IdJdate.AsString) = NALJA_NO then

    > ShowMessage('날짜 입력 오류입니다.');

    > end;

    > end;

    >

    > 위처럼 TField 의 OnChanged 이벤트에서 날짜 입력 및 점검하는 코드를 만들었는데요.

    > DateChk 함수는 날짜 점검인데 따로 적지는 않았습니다.

    > 물어보려는 것은요, 위와 같은 기능을 가져야 하는 TField가 5개 있어요.

    > 이게 전부 DBGrid에서 표시가 되는 것입니다.

    > Query로 불러온것인데요, 각각의 이름만 틀릴 뿐이지 코딩 소스는 다 같습니다.

    > 이럴경우에 위처럼 이름을 쓰지 않고 코딩해서 5개의 TField가 같은 소스를 공유하는수가 없나요?

    > 말하자면 TComboBox(ActiveControl).DroppedDown 뭐 이런식으로 적을수가 없냔느 겁니다.

    > q_IdJdate.AsString 이것을 TField(ActiveControl).AsString 로 적으니까 에러가 나데요.

    > 제가 이런식으로 적는방법이 있다고만 알지 어떤경우에 어떻게 적어야 한다는 것에는 쑥맥입니다.

    > 어떤식으로 하는지 방법을 알려주시면 무척 감사하겠습니다.

    > 그리고, 위와 같은 - TComboBox(ActiveControl).... - 코딩법은 어떻게 구현하는가를 알려주실수 있으면 더욱 고맙겠습니다. 아님 그런 사이트가 있는 곳등....

    > 그럼 수고하세요.

    > 꾸벅~~.

    >

    >

    >

    > 위대한 단군혼이 살아있는 나라.... 대한민국.

  • Profile
    seagod 2000.04.27 01:55
    procedure 를 하나 만드심이 어떨지요 가령 요렇게요

    procedure proc1(Sender: TField);

    begin

    if Length(Sender.Text) = 6 then

    :

    end;



    까마귀 wrote:

    > 안녕하세요. 까마귀입니다.

    > 비 그치고 나니 좀 상쾌하지 않으세요? 남은 하루라도 그렇게 보내시길...

    >

    > const

    > NALJA_YES : 1

    > NALJA_NO : 0

    >

    > procedure Tdm_Closing.q_IdJDATEChange(Sender: TField);

    > begin

    > if Length(q_IdJdate.AsString) = 6 then

    > begin

    > if StrToInt(Copy(q_IdJdate.AsString,1,2)) > 10 then

    > q_IdJdate.AsString := '19' + q_IdJdate.AsString

    > else q_IdJdate.AsString := '20' + q_IdJdate.AsString;

    > if DateChk(q_IdJdate.AsString) = NALJA_NO then

    > ShowMessage('날짜 입력 오류입니다.');

    > end;

    > end;

    >

    > 위처럼 TField 의 OnChanged 이벤트에서 날짜 입력 및 점검하는 코드를 만들었는데요.

    > DateChk 함수는 날짜 점검인데 따로 적지는 않았습니다.

    > 물어보려는 것은요, 위와 같은 기능을 가져야 하는 TField가 5개 있어요.

    > 이게 전부 DBGrid에서 표시가 되는 것입니다.

    > Query로 불러온것인데요, 각각의 이름만 틀릴 뿐이지 코딩 소스는 다 같습니다.

    > 이럴경우에 위처럼 이름을 쓰지 않고 코딩해서 5개의 TField가 같은 소스를 공유하는수가 없나요?

    > 말하자면 TComboBox(ActiveControl).DroppedDown 뭐 이런식으로 적을수가 없냔느 겁니다.

    > q_IdJdate.AsString 이것을 TField(ActiveControl).AsString 로 적으니까 에러가 나데요.

    > 제가 이런식으로 적는방법이 있다고만 알지 어떤경우에 어떻게 적어야 한다는 것에는 쑥맥입니다.

    > 어떤식으로 하는지 방법을 알려주시면 무척 감사하겠습니다.

    > 그리고, 위와 같은 - TComboBox(ActiveControl).... - 코딩법은 어떻게 구현하는가를 알려주실수 있으면 더욱 고맙겠습니다. 아님 그런 사이트가 있는 곳등....

    > 그럼 수고하세요.

    > 꾸벅~~.

    >

    >

    >

    > 위대한 단군혼이 살아있는 나라.... 대한민국.

    • 이빈
    • 2000.04.27 10:20
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.04.27 12:01
      안녕하세요. 최용일입니다. 말그대로 AviCap.dcu를 생성할 수 없다는 말입니다. 아마도 AviCap.dcu의 파...
    • 김일영
    • 2000.04.27 09:41
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.04.27 11:59
      안녕하세요. 최용일입니다. DLL을 쓰세요. 패키지도 일종의 DLL이지만 많은 부분이 다릅니다. 몇가지 함...
    • 김일영
      2000.04.29 03:55
      답변에 감사드립니다. 제가 몸이 안 좋아서 늦게서야 인사를 올리게 되었습니다. 과연 패키지의 컴포넌...
    • [정성훈]당근이져....
      2000.04.28 09:15
      이수정 wrote: > 안녕하세요.. > > Query 하나만으로.. DataSource나 Table을 사용하지 않고도.. > ...
    • nilriri
      2000.04.27 17:44
      queyr1의 databasename속성에 alias명을 선택해 주시고 sql문에 원하는 내용을 넣어서 쓰시면 됩니다. ...
    • 김일영
      2000.04.27 07:41
      제 경험으로는 DataSource나 Table을 사용하지 않고도 적어도 select문은 어떤 것이든 아무 이상없이 잘 ...
    • 유레카
    • 2000.04.27 04:40
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 오현수
      2000.04.28 07:57
      유레카 wrote: > > 파라독스나 sql server에서 제공되는 자동증가 변수 타입을 InterBase에서도 사용...
    • 김태열
      2000.04.28 04:10
      김명찬 wrote: > 안녕하십니까? > 질문이 있어 글을 올립니다. > > 로컬 데이터베이스이에서 알리아스...
    • 쥬니
    • 2000.04.27 02:43
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 한석희
      2000.04.27 20:36
      강병수 wrote: > 스캔 Device 로부터 입력받은 데이타를 Bitmap 형식으로 > 이미지 콤포넌트로 디스플레...
    • 이기현
      2000.04.27 02:50
      /////////////////////////////////////// 스캔제조회사로 부터 프로그램 소스를 문의(프로그램 소스를 얻...
    • 이기현
      2000.04.27 02:34
      ///////////////////// Binary large object(BLOB); binary, memo, graphic, and OLE. 등을 Save하고 Loa...
    • seagod
      2000.04.27 02:30
      BLOB 은 binary large object (BLOB)의 약어구요 바이너리 데이터를 저장하기위한 것이죠 TBlobField에 파...
    • 사발우성
      2000.04.27 18:30
      seagod wrote: > BLOB 은 binary large object (BLOB)의 약어구요 > 바이너리 데이터를 저장하기위한 것...
    • neperz
    • 2000.04.27 01:54
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 이언주
    • 2000.04.27 01:44
    • 2 COMMENTS
    • /
    • 0 LIKES
    • HART
      2000.04.27 02:43
      QRCompositeReport라는 컴폰너트를 사용하면 세개의 디비을 같이 출력할 수 있습니다. 예제는 델파이 데모...
    • 이언주
      2000.04.28 03:05
      저번에 제가 질문한 것에서는 이것이 가능하지만요...이번에는 QRRichText를 사용해서 쿼리문을 사용해서 ...
    • 이기현
      2000.04.27 01:50
      ///////////////// if Col = 2 then // or if (Col = 2) and (Row = 2) then begin TStringG...
    • 상아
      2000.04.28 19:55
      답변 감사합니다.. 많은 도움 됐습니다... 처음엔 이 문장을 어디에 삽입할지 몰라서 쩔쩔...워낙 초보라...
    • 이도선
    • 2000.04.27 01:27
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이상호
      2000.05.16 08:25
      Windows API인 CopyMemory를 사용하는 방법도 있습니다. 원형은 아래와 같습니다. VOID CopyMemory ( ...
    • 이기현
      2000.04.27 01:33
      ////////////////////// Move(A, B, SizeOf(B));
    • 이기현
      2000.04.27 01:35
      //////////////////// GetActiveWindow
    • yanny
      2000.04.27 05:07
      이기현 wrote: > //////////////////// > GetActiveWindow 답변 감사 드립니다
    • 까마귀
    • 2000.04.27 01:09
    • 2 COMMENTS
    • /
    • 0 LIKES
    • nilriri
      2000.04.27 02:31
      테이블 컴포넌트에서 더블클릭하면 나오는 필드에디트 창에서 필드를 모두 선택하구요 오브젝트 인스펙터...
    • seagod
      2000.04.27 01:55
      procedure 를 하나 만드심이 어떨지요 가령 요렇게요 procedure proc1(Sender: TField); begin ...
    • 여용구
    • 2000.04.27 00:45
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.04.27 04:00
      안녕하세요. 최용일입니다. 가변데이터를 가질 수 있는 개방형 배열(Open array)을 파라매터로 이용하세...
    • 여용구
    • 2000.04.27 00:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 한석민
      2000.05.09 03:27
      여용구 wrote: > 안녕하세요.. 다름이아니라. > > 다음과 같이 WinApi인 CreateThread를 사용하여 쓰레...
    • 쥬니
    • 2000.04.27 00:26
    • 6 COMMENTS
    • /
    • 0 LIKES
    • seagod
      2000.04.27 01:46
    • 이기현
      2000.04.27 00:40
    • 쥬니
      2000.04.27 00:50
    • 이기현
      2000.04.27 01:23
    • 쥬니
      2000.04.27 03:11
    • 이기현
      2000.04.27 03:49