Q&A

  • stringgrid의 cell값을 '*****'식으로 나타내려면...
db에 있는 Table의 field값을 stringgrid에 뿌릴 때

stringgrid의 cell에는 항상 '*****'식으로 나타나게 하려고

하는데 방법 좀 알려 주세요.

byte수도 똑같게 말이죠



ex>

skpark -> ******

1234 -> ****



이렇게요

부탁합니다.

3  COMMENTS
  • Profile
    최석기 2000.07.22 04:43
    김준영 wrote:

    > db에 있는 Table의 field값을 stringgrid에 뿌릴 때

    > stringgrid의 cell에는 항상 '*****'식으로 나타나게 하려고

    > 하는데 방법 좀 알려 주세요.

    > byte수도 똑같게 말이죠

    >

    > ex>

    > skpark -> ******

    > 1234 -> ****

    >

    > 이렇게요

    > 부탁합니다.



    Field에 있는 이벤트 중에 GetText 이벤트를 사용해서 *로 바꿔버리지요..



    StringGrid에 뿌릴때는 FieldName.DisplayText로 가져와서 뿌리시고요..



    실제 디비에 값을 읽으실때는 FiekdName.AsString 이런 식으로 읽으면 해결될꺼 같은데..

  • Profile
    김준영 2000.07.22 19:32
    최석기 wrote:

    > 김준영 wrote:

    > > db에 있는 Table의 field값을 stringgrid에 뿌릴 때

    > > stringgrid의 cell에는 항상 '*****'식으로 나타나게 하려고

    > > 하는데 방법 좀 알려 주세요.

    > > byte수도 똑같게 말이죠

    > >

    > > ex>

    > > skpark -> ******

    > > 1234 -> ****

    > >

    > > 이렇게요

    > > 부탁합니다.

    >

    > Field에 있는 이벤트 중에 GetText 이벤트를 사용해서 *로 바꿔버리지요..

    >

    > StringGrid에 뿌릴때는 FieldName.DisplayText로 가져와서 뿌리시고요..

    >

    > 실제 디비에 값을 읽으실때는 FiekdName.AsString 이런 식으로 읽으면 해결될꺼 같은데..



    조금 더 구체적으로 설명해 주실 수 없습니까?

    가능하시다면 소스를 보여주시면 더 좋구요

    그럼..

  • Profile
    최석기 2000.07.22 21:43
    님 힌트만으로 조금 하시기 힘들었나 보네요..



    아래 소스 지금 제가 해보구 올리는 거거든요 이런 식으로 되는거 말씀하시나 보네요..



    제가 주석을 않달았거든요..



    함 살펴보시고 모르시면 다시 질문 주세요 ^^



    unit Unit1;



    interface



    uses

    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

    StdCtrls, Grids, Db, DBTables;



    type

    TForm1 = class(TForm)

    DataSource1: TDataSource;

    Table1: TTable;

    StringGrid1: TStringGrid;

    Button1: TButton;

    procedure Button1Click(Sender: TObject);

    private

    { Private declarations }

    procedure TableGetText(Sender: TField; var Text: String;

    DisplayText: Boolean);

    public

    { Public declarations }

    end;



    var

    Form1: TForm1;



    implementation



    {$R *.DFM}



    procedure TForm1.Button1Click(Sender: TObject);

    var

    i,j: integer;

    begin

    with Table1 do begin

    DatabaseName := 'DBDEMOS';

    TableName := 'animals.dbf';

    Open;

    StringGrid1.ColCount := 2*FieldCount;

    StringGrid1.RowCount := RecordCount + 1;

    for i := 0 to StringGrid1.ColCount - 1 do

    if (i mod 2) = 0 then

    StringGrid1.Cells[i,0] := Fields[i div 2].DisplayName

    else begin

    Fields[i div 2].OnGetText := TableGetText;

    StringGrid1.Cells[i,0] := Fields[i div 2].DisplayName + ':실제값';

    end;

    j := 1;

    while not EOF do begin

    for i := 0 to StringGrid1.ColCount - 1 do begin

    if not (Fields[i div 2].DataType in [ftString,ftSmallInt,ftInteger,ftFloat,ftCurrency]) then

    Continue;

    if (i mod 2) = 0 then

    StringGrid1.Cells[i,j] := Fields[i div 2].DisplayText

    else

    StringGrid1.Cells[i,j] := Fields[i div 2].AsString;

    end;

    Inc(j);

    next;

    end;

    end;

    end;



    procedure TForm1.TableGetText(Sender: TField; var Text: String;

    DisplayText: Boolean);

    var

    i: integer;

    begin

    if Sender.AsString = '' then

    exit;



    for i:=0 to Length(Sender.AsString) - 1 do

    Text := Text + '*';

    end;



    end.



    김준영 wrote:

    > 최석기 wrote:

    > > 김준영 wrote:

    > > > db에 있는 Table의 field값을 stringgrid에 뿌릴 때

    > > > stringgrid의 cell에는 항상 '*****'식으로 나타나게 하려고

    > > > 하는데 방법 좀 알려 주세요.

    > > > byte수도 똑같게 말이죠

    > > >

    > > > ex>

    > > > skpark -> ******

    > > > 1234 -> ****

    > > >

    > > > 이렇게요

    > > > 부탁합니다.

    > >

    > > Field에 있는 이벤트 중에 GetText 이벤트를 사용해서 *로 바꿔버리지요..

    > >

    > > StringGrid에 뿌릴때는 FieldName.DisplayText로 가져와서 뿌리시고요..

    > >

    > > 실제 디비에 값을 읽으실때는 FiekdName.AsString 이런 식으로 읽으면 해결될꺼 같은데..

    >

    > 조금 더 구체적으로 설명해 주실 수 없습니까?

    > 가능하시다면 소스를 보여주시면 더 좋구요

    > 그럼..

    • 나그네
      2000.07.22 19:27
      급) 많은 조언 부탁드려요. 퀵리포트 wrote: > 현재 디테일밴드에서 > 폼형태 (관공서 양식) > > ...
    • 돌멩이
      2000.07.22 19:21
      급) 많은 조언 부탁드려요. 퀵리포트 wrote: > 현재 디테일밴드에서 > 폼형태 (관공서 양식) > > ...
    • 김태영
    • 2000.07.22 18:37
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김영해
      2000.07.22 18:48
      김태영 wrote: > 델초보자입니다. 델파이로 프로그램을 만들었는데요. 그런데 실행파일 사이즈가 크고 또...
    • lspark
    • 2000.07.22 18:34
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 황석민
    • 2000.07.22 12:45
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 허춘
      2000.07.22 14:43
      황석민 wrote: > > 메세지... > > 1. 처음 메세지 > Project dbTest.exe raised exception class ...
    • 타락천사
      2000.07.23 02:23
      안녕하세여..타락임다..^^ 제가 테스트해보고 올린건데여..ㅠㅠ 문법에러가 아닌가 함 보세여...ㅠㅠ...
    • 임규완
    • 2000.07.22 07:43
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최석기
      2000.07.22 19:13
      임규완 wrote: > 저는 이제 막 델파이를 배우고 실전에 써먹기 위해 노력하고 있는 델파이 초보 프로그래...
    • 김준영
    • 2000.07.22 04:29
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 최석기
      2000.07.22 04:43
      김준영 wrote: > db에 있는 Table의 field값을 stringgrid에 뿌릴 때 > stringgrid의 cell에는 항상 '***...
    • 김준영
      2000.07.22 19:32
      최석기 wrote: > 김준영 wrote: > > db에 있는 Table의 field값을 stringgrid에 뿌릴 때 > > stringgrid...
    • 최석기
      2000.07.22 21:43
      님 힌트만으로 조금 하시기 힘들었나 보네요.. 아래 소스 지금 제가 해보구 올리는 거거든요 이런 식으...
    • 유레카
    • 2000.07.22 03:35
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 최석기
      2000.07.22 03:44
      유레카 wrote: > PageControl에서 특정키(예를 들어 Shift키)를 누르면 Next페이지(혹은 previous page로...
    • 유레카
      2000.07.22 03:53
      참고로 전체 프로젝트상에서 엔터키를 탭키처럼 쓸수 있게 코딩했구요. PageControl이 있는 폼에서만 아...
    • 최석기
      2000.07.22 04:39
      KeyPress 이벤트에서 두키를 한번에 잡을 수 있었나??? KeyDown 이벤트 쓰시죠.. 유레카 wrote: > ...
    • 유레카
      2000.07.22 06:20
      답변감사합니다. 아래와 같이 코딩하니 반응하더군요. procedure TFormBaseReg.FormKeyDown(Sender: T...
    • 상아
    • 2000.07.22 03:29
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 허춘
      2000.07.22 14:38
      상아 wrote: > > 델파이 초보자 입니다. > > 델파이 3.0 에서 짠 프로그램인데 object inspector 가 ...
    • 조규춘
      2000.07.22 04:33
      초보 wrote: > db그리드에서 각 셀의 오른쪽 정렬을 어떻게 해야 하는 것인지.. > > 숫자데이터라 보기...
    • 초보자
    • 2000.07.22 03:08
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 병부잡이
      2000.07.22 18:38
      테이블스페이스를 잡은 CREATE문과 테이블을 잡은 CREATE문을 적어주시고 테이블의 일건수 예상수를 적어...
    • 안젤726
      2000.07.22 03:55
      초보자 wrote: 혹 테이블 생성시 테이블의 크기를 너무 크게한게 아닌가요... 만든 테이블의 크기가 모두...
    • 당근이
      2000.07.22 04:39
      CREATE TABLE MIS.STZE17 ( ZIPCODE VARCHAR2(6) NOT NULL, PROVINCE VARCHAR2(10), CITY VARCHAR...
    • 초보자
      2000.07.25 19:44
      안녕하세요..질문을 해놓구 다시 올리게되네요.. 가르쳐주신다는분이 계셨는데..넘 늦게 올리게 되는거 같...
    • 방석호
    • 2000.07.22 02:58
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 임정영
      2000.10.11 18:45
      방석호 wrote: > 안녕하세요? > > win2000 server 에서 퀵레포트 오류가 납니다.. > > 처음 델파이...