Q&A

  • dbgrid에서 원하는 cell을 클릭하면 text박스에 나오려면..
dbgrid에서 원하는 cell을 클릭할경우 원하는 text박스에 그 내용이 들어가게하려고

하는데 .....

또 제가 원하는 이름을 칠 경우

만약

"홍"을 치면 "홍"으로 시작하는 사람들이 다출력되고 다시 옆에 "길"을 치면

"홍길"로 시작하는 사람이 나오고 "홍길동"치면 "홍길동"으로 시작하는 사람이 나오게

하려면 어떻게 해야하는지....

급합니다....

3  COMMENTS
  • Profile
    반칙왕 2001.02.03 01:37
    이원택 wrote:

    > dbgrid에서 원하는 cell을 클릭할경우 원하는 text박스에 그 내용이 들어가게하려고

    > 하는데 .....

    > 또 제가 원하는 이름을 칠 경우

    > 만약

    > "홍"을 치면 "홍"으로 시작하는 사람들이 다출력되고 다시 옆에 "길"을 치면

    > "홍길"로 시작하는 사람이 나오고 "홍길동"치면 "홍길동"으로 시작하는 사람이 나오게

    > 하려면 어떻게 해야하는지....

    > 급합니다....

    안녕하세요

    근데 제가 답을 올려도 되는지 모르겠습니다. 고수님들 지송합니다.



    광주에 사는 왕초보중에 왕초보 반칙왕입니다.



    저도 얼마전에 똑같은 상황에 처한 바가 있어서 (불과 두달전에)

    고통을 알기에 올려봅니다.



    DBGrid에서 선택을하면 텍스트박스로 데이타가 들오로게 하는것은

    datasource 이벤트에 보시면 ondatachange 가 있는데 이곳을 더블클릭하여서

    with Form1.tbCd_Name do

    begin

    edNo.Text := FieldByName('No' ).AsString ;

    edName.Text := FieldByName('NAME' ).AsString ;

    edSname.Text := FieldByName('SNAME' ).AsString ;

    edTel.Text := FieldByName('TEL' ).AsString ;

    edFax.Text := FieldByName('FAX' ).AsString ;

    edhTel.Text := FieldByName('HTEL' ).AsString ;

    edAddr.Text := FieldByName('ADDR' ).AsString ;

    edEmail.Text := FieldByName('EMAIL' ).AsString ;

    end;

    위와 같이 입력을 하면 그 데이타가 그 텍스트 항목으로 들어가게 됩니다.



    그리고 검색에서 '홍'이라고 입력후 검색을 하면 홍길동,홍만득,등등등...

    이건

    검색버튼을 더블클릭하고

    with Form1.tbCd_Name do

    if edit1.text <> '' then

    begin

    Close;

    Filtered := true;

    Filter := 'NAME = '''+(Edit1.Text+'*')+''' ';

    Open;

    itot := Form1.tbCd_Name.RecordCount;

    edTot.Text :=intTostr(itot);

    end

    else

    begin

    Close;

    Filtered := False; // -> 이 부분은 검색어가 없으면 모두 보여주기 위함

    open;

    end;

    라고 입력해주면 가능합니다.

    위에 Edit1.Text+'*' ----> 검색시 그 해당되는 문자를 포함한 모든것을 말합니다.

    그럼 즐코하시고여 힘들때면 처음 시작할때를 생각하시고 ^^;

    저도 이곳에 글올린적이 두번째랍니다.

    오늘도 반칙왕은 반칙을 하고 갑니다. ^^;

  • Profile
    뻐록이 2001.02.03 05:00
    반칙왕 wrote:

    > 이원택 wrote:

    > > dbgrid에서 원하는 cell을 클릭할경우 원하는 text박스에 그 내용이 들어가게하려고

    > > 하는데 .....

    > > 또 제가 원하는 이름을 칠 경우

    > > 만약

    > > "홍"을 치면 "홍"으로 시작하는 사람들이 다출력되고 다시 옆에 "길"을 치면

    > > "홍길"로 시작하는 사람이 나오고 "홍길동"치면 "홍길동"으로 시작하는 사람이 나오게

    > > 하려면 어떻게 해야하는지....

    > > 급합니다....

    > 안녕하세요

    > 근데 제가 답을 올려도 되는지 모르겠습니다. 고수님들 지송합니다.

    >

    > 광주에 사는 왕초보중에 왕초보 반칙왕입니다.

    >

    > 저도 얼마전에 똑같은 상황에 처한 바가 있어서 (불과 두달전에)

    > 고통을 알기에 올려봅니다.

    >

    > DBGrid에서 선택을하면 텍스트박스로 데이타가 들오로게 하는것은

    > datasource 이벤트에 보시면 ondatachange 가 있는데 이곳을 더블클릭하여서

    > with Form1.tbCd_Name do

    > begin

    > edNo.Text := FieldByName('No' ).AsString ;

    > edName.Text := FieldByName('NAME' ).AsString ;

    > edSname.Text := FieldByName('SNAME' ).AsString ;

    > edTel.Text := FieldByName('TEL' ).AsString ;

    > edFax.Text := FieldByName('FAX' ).AsString ;

    > edhTel.Text := FieldByName('HTEL' ).AsString ;

    > edAddr.Text := FieldByName('ADDR' ).AsString ;

    > edEmail.Text := FieldByName('EMAIL' ).AsString ;

    > end;

    > 위와 같이 입력을 하면 그 데이타가 그 텍스트 항목으로 들어가게 됩니다.

    >

    > 그리고 검색에서 '홍'이라고 입력후 검색을 하면 홍길동,홍만득,등등등...

    > 이건

    > 검색버튼을 더블클릭하고

    > with Form1.tbCd_Name do

    > if edit1.text <> '' then

    > begin

    > Close;

    > Filtered := true;

    > Filter := 'NAME = '''+(Edit1.Text+'*')+''' ';

    > Open;

    > itot := Form1.tbCd_Name.RecordCount;

    > edTot.Text :=intTostr(itot);

    > end

    > else

    > begin

    > Close;

    > Filtered := False; // -> 이 부분은 검색어가 없으면 모두 보여주기 위함

    > open;

    > end;

    > 라고 입력해주면 가능합니다.

    > 위에 Edit1.Text+'*' ----> 검색시 그 해당되는 문자를 포함한 모든것을 말합니다.

    > 그럼 즐코하시고여 힘들때면 처음 시작할때를 생각하시고 ^^;

    > 저도 이곳에 글올린적이 두번째랍니다.

    > 오늘도 반칙왕은 반칙을 하고 갑니다. ^^;







    반칙왕님이 쓴글줄에서

    Edit1.Text+'*' 이런게 쓰셨는데

    혹시 Edit1.Text+'%'

    이거 아닌가요??



    이상 뻐럭이 이였습니다.

    즐코딩 하세요



  • Profile
    반칙왕 2001.02.03 19:10
    뻐록이 wrote:

    > 반칙왕 wrote:

    > > 이원택 wrote:

    > > > dbgrid에서 원하는 cell을 클릭할경우 원하는 text박스에 그 내용이 들어가게하려고

    > > > 하는데 .....

    > > > 또 제가 원하는 이름을 칠 경우

    > > > 만약

    > > > "홍"을 치면 "홍"으로 시작하는 사람들이 다출력되고 다시 옆에 "길"을 치면

    > > > "홍길"로 시작하는 사람이 나오고 "홍길동"치면 "홍길동"으로 시작하는 사람이 나오게

    > > > 하려면 어떻게 해야하는지....

    > > > 급합니다....

    > > 안녕하세요

    > > 근데 제가 답을 올려도 되는지 모르겠습니다. 고수님들 지송합니다.

    > >

    > > 광주에 사는 왕초보중에 왕초보 반칙왕입니다.

    > >

    > > 저도 얼마전에 똑같은 상황에 처한 바가 있어서 (불과 두달전에)

    > > 고통을 알기에 올려봅니다.

    > >

    > > DBGrid에서 선택을하면 텍스트박스로 데이타가 들오로게 하는것은

    > > datasource 이벤트에 보시면 ondatachange 가 있는데 이곳을 더블클릭하여서

    > > with Form1.tbCd_Name do

    > > begin

    > > edNo.Text := FieldByName('No' ).AsString ;

    > > edName.Text := FieldByName('NAME' ).AsString ;

    > > edSname.Text := FieldByName('SNAME' ).AsString ;

    > > edTel.Text := FieldByName('TEL' ).AsString ;

    > > edFax.Text := FieldByName('FAX' ).AsString ;

    > > edhTel.Text := FieldByName('HTEL' ).AsString ;

    > > edAddr.Text := FieldByName('ADDR' ).AsString ;

    > > edEmail.Text := FieldByName('EMAIL' ).AsString ;

    > > end;

    > > 위와 같이 입력을 하면 그 데이타가 그 텍스트 항목으로 들어가게 됩니다.

    > >

    > > 그리고 검색에서 '홍'이라고 입력후 검색을 하면 홍길동,홍만득,등등등...

    > > 이건

    > > 검색버튼을 더블클릭하고

    > > with Form1.tbCd_Name do

    > > if edit1.text <> '' then

    > > begin

    > > Close;

    > > Filtered := true;

    > > Filter := 'NAME = '''+(Edit1.Text+'*')+''' ';

    > > Open;

    > > itot := Form1.tbCd_Name.RecordCount;

    > > edTot.Text :=intTostr(itot);

    > > end

    > > else

    > > begin

    > > Close;

    > > Filtered := False; // -> 이 부분은 검색어가 없으면 모두 보여주기 위함

    > > open;

    > > end;

    > > 라고 입력해주면 가능합니다.

    > > 위에 Edit1.Text+'*' ----> 검색시 그 해당되는 문자를 포함한 모든것을 말합니다.

    > > 그럼 즐코하시고여 힘들때면 처음 시작할때를 생각하시고 ^^;

    > > 저도 이곳에 글올린적이 두번째랍니다.

    > > 오늘도 반칙왕은 반칙을 하고 갑니다. ^^;

    >

    >

    >

    > 반칙왕님이 쓴글줄에서

    > Edit1.Text+'*' 이런게 쓰셨는데

    > 혹시 Edit1.Text+'%'

    > 이거 아닌가요??

    >

    > 이상 뻐럭이 이였습니다.

    > 즐코딩 하세요

    >

    뻐럭님이 쓰신글

    먼저 감사를 드립니다.

    Edit1.Text+'%'; 를 확인해 보았습니다.

    filter 조건에ㅓ "%"는 먹지 않더라구여.... 예전에 저도 그부분 때문에 좀 해맸습니다.

    %는 SQL 문에서는 먹는데 실제로 코딩에서는 안먹더라구여... 헤헤



    예를 들어서

    Edit1.Text (홍) 이고 + '*' 이면 -> 홍+'*' -> 홍으로 시작하는 모든 데이타를 Filter

    시키라는 의미이며

    Edit1.Text (홍길)이고 + '*' 이면 -> 홍길+'*' -> 홍길로 시작하는 모든 데이타를 Filter

    시키라는 의미인걸로 알고 테스트도 해 보았습니다.



    제가 다시 테스트 해본 결과 입니다.실제 코딩에 사용 해보시길 바랍니다.

    그럼 즐코 하세요^^;