Q&A

  • DBGrid에서 현재 레코드의 색변환....
DBGrid에서 현재 그리드 Indicator각 가리키는 레코드의

색을 바꾸고 싶습니다.

그리드 옵션의 RowSelect를 True로 바꾸는것 말고

다른 방법은 없는지요...



2  COMMENTS
  • Profile
    구창민 2000.09.21 00:23
    박일용 wrote:

    > DBGrid에서 현재 그리드 Indicator각 가리키는 레코드의

    > 색을 바꾸고 싶습니다.

    > 그리드 옵션의 RowSelect를 True로 바꾸는것 말고

    > 다른 방법은 없는지요...

    >



    DBGrid의 Options라는 속성중 dgAlwaysShowEditor속성은

    False로, dgAlwaysShowSelection속성은 True로 한다음,

    DBGrid의 OnDrawDataCell 이벤트에 아래와 같이 작성하시면 됩니다.



    Procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;

    Field: TField; State: TGridDrawState);

    Begin

    If gdSelected in State then

    with (Sender as TDBGrid).Canvas do begin

    Brush.Color := clRed; //선택된 Cell의 색깔을 빨간색으로 바꿔줍니다.

    FillRect(Rect);

    TextOut(Rect.Left, Rect.Top, Field.AsString);

    end;

    End;



    즐거운 프로그래밍 하세요~





  • Profile
    박일용 2000.09.21 01:13
    구창민 wrote:

    > 박일용 wrote:

    > > DBGrid에서 현재 그리드 Indicator각 가리키는 레코드의

    > > 색을 바꾸고 싶습니다.

    > > 그리드 옵션의 RowSelect를 True로 바꾸는것 말고

    > > 다른 방법은 없는지요...

    > >

    >

    > DBGrid의 Options라는 속성중 dgAlwaysShowEditor속성은

    > False로, dgAlwaysShowSelection속성은 True로 한다음,

    > DBGrid의 OnDrawDataCell 이벤트에 아래와 같이 작성하시면 됩니다.

    >

    > Procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;

    > Field: TField; State: TGridDrawState);

    > Begin

    > If gdSelected in State then

    > with (Sender as TDBGrid).Canvas do begin

    > Brush.Color := clRed; //선택된 Cell의 색깔을 빨간색으로 바꿔줍니다.

    > FillRect(Rect);

    > TextOut(Rect.Left, Rect.Top, Field.AsString);

    > end;

    > End;

    >

    > 즐거운 프로그래밍 하세요~

    >

    >

    먼저 답변에 감사합니다..

    그리고 한가지 더 ....

    위의 경우는 특정 셀 하나에만 적용되는데

    indicator이 가르키는 레코드 모두에 적용하려면 어찌해야 하는지...





    • 돌머리
      2000.09.21 00:34
      안녕하세요 김동원입니다. 아직도 해결하지 못하셨군요.. 이 방법을 써 보세요.. Edit1.Text := Forma...
    • 구창민
      2000.09.21 00:20
      mickyblue wrote: > 날짜 변환입니다 > 뭐가 틀렸는지... > procedure TForm1.Button1Click(Sender: TOb...
    • 박일용
    • 2000.09.21 00:05
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2000.09.21 00:23
      박일용 wrote: > DBGrid에서 현재 그리드 Indicator각 가리키는 레코드의 > 색을 바꾸고 싶습니다. > ...
    • 박일용
      2000.09.21 01:13
      구창민 wrote: > 박일용 wrote: > > DBGrid에서 현재 그리드 Indicator각 가리키는 레코드의 > > 색을 ...
    • ajfxlspt
    • 2000.09.20 23:58
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 황은진
    • 2000.09.20 23:42
    • 3 COMMENTS
    • /
    • 0 LIKES
    • shs
      2000.09.21 00:42
      이렇게 SQL문을 구성하면 안될까요? select a.name, decode(a.CoAddr,null,a.homezipcode,Cozipcode) ...
    • 돌머리
      2000.09.21 00:20
      안녕하세요 김동원입니다. 꼭쿼리문 내에서 처리해야 한다는 조건만 아니면 간단히 처리할 수 있습니다....
    • 투덜이
      2000.09.20 23:57
      직장과 집주소 모두 쿼리하여 D/M발송처리에서 직장주소가 공백일때 집주소로 처리하는구문을 넣으면 어...
    • 구창민
    • 2000.09.20 23:20
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 질문맨
      2000.09.21 00:13
      main 폼 이름이 A , Dialog 폼 이름이 B 라고할 때, Dialog 폼에 uses TA 를 썼읍니다. 그리고 Dial...
    • 구창민
      2000.09.21 00:17
      Dialog폼의 Unit명을 메인유닛의 uses 에 기술하시면 해결될거 같습니다. 즐거운 프로그래밍 하시길...
    • kissme
    • 2000.09.20 23:03
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2000.09.20 23:16
      kissme wrote: > 자료실에.. 있는 컴포넌트를 사용할려면.. > Rxlib를 꼭 설치해야 하나요?.. > ...
    • 디비자
    • 2000.09.20 22:47
    • 3 COMMENTS
    • /
    • 0 LIKES
    • miki
      2000.11.25 21:53
      with Query1 do begin close; SQL.Clear; SQL.add('select *'); SQL.add(' from clients...
    • 구창민
      2000.09.20 23:22
      디비자 wrote: > SQL 의 LIKE를 사용하는데 이상하게 안되네요. > 이렇게 했거든요? > > with Quer...
    • 임형호
      2000.09.20 23:17
      컴파일시에 에러가 발생하지 않았다면...문장은 맞는것 같은데요. 그런데 아래코딩을 보면 execsql이라는...
    • 나상학
    • 2000.09.20 22:37
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2000.09.20 23:22
      나상학 wrote: > Server와 Client간의 소켓연결에서 파일전송시 > Tcp/ip기반에서 파일의 크기에 따라 일...
    • 나상학
      2000.09.22 01:59
      답변 고맙습니다.. 많은 도움이 될 것 같네요.. 구창민 wrote: > 나상학 wrote: > > Server와 Client...
    • Cha
    • 2000.09.20 21:08
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2000.09.20 23:26
      Cha wrote: > 텍스트 화일의 확장자를 임의로 바꿔서 저장하고자 합니다. > SaveDialog를 사용해서여.. ...
    • 초초보
    • 2000.09.20 20:46
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2000.09.20 23:29
      초초보 wrote: > 안녕하세요 초초보입니다. > 드라이브 콤보박스에서 CD롬에 CD가 없으면 I/O에러가 뜨는...
    • 초초보
      2000.09.21 00:32
      구창미님~~ 그렇게 해두 I/O에러가 납니다. 염치없지만 다른 방법은 또 없나여? 답변 감사드립니다. ...
    • 구창민
      2000.09.21 01:06
      제이름은 구창민이구요..^^; 소스를 올리셨으면 더 좋았을 것을요. 제가 어떻게 작성을 해 두셨는지 모르...
    • Cha
    • 2000.09.20 20:39
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 악동
    • 2000.09.20 20:35
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 남기용
    • 2000.09.20 20:15
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 남기용
      2000.09.21 00:51
      남기용 wrote: > Blocking방식을 이용을 해서 TWinSocketStream을 사용합니다. > Client의 요구없이 Serv...
    • 호야
    • 2000.09.20 20:09
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 임형호
      2000.09.20 23:20
      이상하네요. 음...전 4개입력후 아래코딩데로 하니까 4가 나오는데요. 호야 wrote: > ListBox1에 4개...
    • mabari
    • 2000.09.20 20:06
    • 0 COMMENTS
    • /
    • 0 LIKES