Q&A

  • Table Append후 Post 하기전에 DBEdit에 입력해준 데이터가 지워집니다.
님들아 있잖아요 table 컴포넌트에서요 append 후 post 하는 순서에서요

append후 post하기 전에 유저가 db에디트 같은곳에 자료 입력후 post하잖아요

그런데 유저들 편하라고 미리 dbedit1.text := 'http://www.'라고 코드로 미리 입력해주고 그이후만 유저가 입력하게 해줄려고 하는데........ㅠ..ㅠ dbedit1.text박스에 포커스만 가면 'http://www.'가 지워지고 공백이 되어 버려요. 일단 보였다가 dbedit1.text박스에 클릭만 하면 공백이 되니 ㅠ..ㅠ 방법이 없나요....

4  COMMENTS
  • Profile
    bassmania 2000.12.05 01:36
    pallas wrote:

    > 님들아 있잖아요 table 컴포넌트에서요 append 후 post 하는 순서에서요

    > append후 post하기 전에 유저가 db에디트 같은곳에 자료 입력후 post하잖아요

    > 그런데 유저들 편하라고 미리 dbedit1.text := 'http://www.'라고 코드로 미리 입력해주고 그이후만 유저가 입력하게 해줄려고 하는데........ㅠ..ㅠ dbedit1.text박스에 포커스만 가면 'http://www.'가 지워지고 공백이 되어 버려요. 일단 보였다가 dbedit1.text박스에 클릭만 하면 공백이 되니 ㅠ..ㅠ 방법이 없나요....



    아래에 답변이 있지만, 조금 다른 방법(?)으로 답변을 드리겠습니다.



    필드값의 디폴트값을 'http://www.'라고 주시고, DBEdit1의 OnEnter 이벤트에 다음과 같이 코딩을

    해주시면 됩니다.

    DBEdit1.SelStart := Length(필드);



    이렇게 코딩하시면, DBEdit1에 입력포커스가 위치하면, http://www._ 처럼 작업을 할 수 있습니다.



    그럼..

  • Profile
    돌머리 2000.11.30 23:14
    안녕하세요 김동원입니다.



    저도 예전에 많이 경험한 적이 있어서 올립니다

    제가 알기로는 데이터를 사용하는 방식이

    1차로 물리적인 데이터를 바탕으로

    2차로 논리데이터를 거처서

    3차로 DBEdit가 가지고 있는 메모리를 거치는 것으로 알고 있습니다.



    DBEdit를 사용해서 데이터를 제어할 경우

    일단 데이터를 Table 컴포넌트나 Query 컴포넌트를 이용하면

    메모리에 맵을 구성합니다.

    이렇게 구성된 맵에서 선택필드를 DBEdit가 가지고 있는 메모리에 로딩

    함으로서 제어할 있는 것으로 알고 있습니다.

    여기서, 데이터를 수정하면 일차적으로 DBEdit가 차지하고 있는 메로리의

    값이 수정되고 특정이벤트에 의해 논리데이터가 수정됩니다.(<=문제 발생)

    수정된 데이터를 물리적인 테이블로 등록 시키는게 Post라고 할수 있겠지요..

    정확이 맞는지 모르겠군요.. 제가 알기로는 대충 이렇습니다.



    질문 하신 문제는 앞의 괄호 앞부분의 문제인것 같습니다.

    저도 귀찮아서 정확한 원인은 찾지 않았습니나...

    코딩부분에서 값을 직접넣어 주시려면 ,,, 다음 처럼 해보세요



    DBEdit1.Field.AsString := 'http://www.'

    DBEdit2.Field.AsInteger := 123;



    DBEdit에 할당된 메모리가 아닌,

    메로리에 로딩된 테이블을 직접수정해 주는 방법입니다.





    도움이 되셨기를 ........







    pallas wrote:

    > 님들아 있잖아요 table 컴포넌트에서요 append 후 post 하는 순서에서요

    > append후 post하기 전에 유저가 db에디트 같은곳에 자료 입력후 post하잖아요

    > 그런데 유저들 편하라고 미리 dbedit1.text := 'http://www.'라고 코드로 미리 입력해주고 그이후만 유저가 입력하게 해줄려고 하는데........ㅠ..ㅠ dbedit1.text박스에 포커스만 가면 'http://www.'가 지워지고 공백이 되어 버려요. 일단 보였다가 dbedit1.text박스에 클릭만 하면 공백이 되니 ㅠ..ㅠ 방법이 없나요....



  • Profile
    조건일 2000.11.30 23:15
    해당 field 의 기본값(default value)를 'http://www.'이라고 하면 되져....



    pallas wrote:

    > 님들아 있잖아요 table 컴포넌트에서요 append 후 post 하는 순서에서요

    > append후 post하기 전에 유저가 db에디트 같은곳에 자료 입력후 post하잖아요

    > 그런데 유저들 편하라고 미리 dbedit1.text := 'http://www.'라고 코드로 미리 입력해주고 그이후만 유저가 입력하게 해줄려고 하는데........ㅠ..ㅠ dbedit1.text박스에 포커스만 가면 'http://www.'가 지워지고 공백이 되어 버려요. 일단 보였다가 dbedit1.text박스에 클릭만 하면 공백이 되니 ㅠ..ㅠ 방법이 없나요....

  • Profile
    강인규 2000.11.30 23:15
    table의 BeforeInsert이벤트에 코딩합니다.



    table1.fieldbyname('URL').asstring := 'http://www.';



    즐프하세여~



    pallas wrote:

    > 님들아 있잖아요 table 컴포넌트에서요 append 후 post 하는 순서에서요

    > append후 post하기 전에 유저가 db에디트 같은곳에 자료 입력후 post하잖아요

    > 그런데 유저들 편하라고 미리 dbedit1.text := 'http://www.'라고 코드로 미리 입력해주고 그이후만 유저가 입력하게 해줄려고 하는데........ㅠ..ㅠ dbedit1.text박스에 포커스만 가면 'http://www.'가 지워지고 공백이 되어 버려요. 일단 보였다가 dbedit1.text박스에 클릭만 하면 공백이 되니 ㅠ..ㅠ 방법이 없나요....