제 질문의 설명이 부적절한 것 같아서 다시 질문을 올립니다..
일반적으로 Form위에 StringGrid 컴포넌트를 올려 놓고 실행을 시켰을 때,
실행된 Form위의 StringGrid를 보면, [1,1]셀에 색깔이 기본적으로
채워져있는데 이것을 나타내고 싶지 않습니다..
Fixed Row와 Fixed Column의 색에 대한 질문은 아닙니다..
fixed_rows, fixed_cols의 값을 0으로 하고 Form을 실행시켜 보면,
StringGrid에서 Focus가 떠났을 때, 선택된 셀에 색이 채워지는 것을
볼 수 있습니다..
Design단계에서 빈 Form에 StringGrid를 올려 놓으면 [1,1]셀에 색이 채워져
있는 것을 없애고 싶습니다..
단순히 n X n 셀의 표만 보여 주고 싶은데, StringGrid를 사용하였습니다..
StringGrid에서 어떤 입력이나 값을 조작할 필요가 없이 단순히 n X n 배열의
데이터만 보여 주려 합니다..
제가 하고자하는데 딱 알맞는 컴포넌트가 따로 있는지요?
답변 부탁드립니다..
일딴 Enabled를 True로 주고
Options의 goEditing은 false 로 주세요...
그럼 실행도중에는 색이 아니고 점선 테두리로 나올겁니다..
그리고 또 셀의 색을 변경시키는 방법도 아울러 알려 드립니다.
procedure TForm1.StringGrid1DrawCell(Sender: TObject; Col, Row: Integer;
Rect: TRect; State: TGridDrawState);
begin
StringGrid1.Canvas.Brush.Color := clWhite;
StringGrid1.Canvas.Font.Color := clBlack;
StringGrid1.Canvas.FillRect(Rect);
stringGrid1.canvas.TextRect(Rect, Rect.Left + 3, Rect.Top + 3, StringGrid1.cells[col, row]);
end;
요렇게 하면 점선 안생기고 깔끔하긴 하네요.....
다만 Cavas폰트도 잘 정의를 해주어야 하지만...
강신구 wrote:
> 제 질문의 설명이 부적절한 것 같아서 다시 질문을 올립니다..
>
> 일반적으로 Form위에 StringGrid 컴포넌트를 올려 놓고 실행을 시켰을 때,
>
> 실행된 Form위의 StringGrid를 보면, [1,1]셀에 색깔이 기본적으로
>
> 채워져있는데 이것을 나타내고 싶지 않습니다..
>
> Fixed Row와 Fixed Column의 색에 대한 질문은 아닙니다..
>
> fixed_rows, fixed_cols의 값을 0으로 하고 Form을 실행시켜 보면,
>
> StringGrid에서 Focus가 떠났을 때, 선택된 셀에 색이 채워지는 것을
>
> 볼 수 있습니다..
>
> Design단계에서 빈 Form에 StringGrid를 올려 놓으면 [1,1]셀에 색이 채워져
>
> 있는 것을 없애고 싶습니다..
>
> 단순히 n X n 셀의 표만 보여 주고 싶은데, StringGrid를 사용하였습니다..
>
> StringGrid에서 어떤 입력이나 값을 조작할 필요가 없이 단순히 n X n 배열의
>
> 데이터만 보여 주려 합니다..
>
> 제가 하고자하는데 딱 알맞는 컴포넌트가 따로 있는지요?
>
> 답변 부탁드립니다..