자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 바쁜 와중에도 답변을 주시는 분들께 감사 댓글 필수
-----------------------------------------------------------------------------------------------
안녕하세요!!! 고수님들의 해결책을 구합니다.

DBGrid를 사용하면 정상적으로 출력되는데 StringGrid는 이상한 현상이 나타납니다.

 

동일한 현상이 제가 개발하는 프로그램마다 발생하여 여러가지로 방법을 각종 사이트(데브기어 사이트와 델마당등)에서

찾아봐도 도무지 해결방법이 없어 방법을 구함니다. 이것 해결하느라 몇일동안 헤매고 있답니다.

고수님들의 해결책을 기다리고 있겠습니다.

 

즉 나타나는 현상은 다음과 같습니다. 파일을 Attatch하였습니다.

IMG_1345.jpg

 

 

그리고 코딩을 다음과 같이 했습니다.

 

procedure TfrmNPLP500D.btnQueryClick(Sender: TObject);

begin
    strTotSum1.Cells[0,0] := ' 점검 항목';
    strTotSum1.Cells[1,0] := '  대상 건수';
    strTotSum1.Cells[2,0] := '   비    고';
    strTotSum1.Cells[0,1] := 'A업무';
    strTotSum1.Cells[1,1] := FormatFloat('0,',Ta1_1);
    strTotSum1.Cells[0,2] := 'B업무';
    strTotSum1.Cells[1,2] := FormatFloat('0,',Ta1_2);
end;
 
 
procedure TfrmNPLP500D.strTotSum1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var
  s:string;
  pos:integer;
  oldalign:integer;
begin
  s := strTotSum1.Cells[acol, arow]; // 각 셀의 해당 값을 가져온다.
  with strTotSum1.Canvas do
  begin
 
    fillrect(rect);
    begin
      if (acol = 1 )  then                                 //오른쪽 정렬
        begin
          oldalign := setTextalign(handle, ta_right);
          textrect(rect, rect.right, rect.Top+3, s);
          setTextalign(handle,oldalign);
        end
      else if (acol = 2 ) then   //왼쪽 정렬
        begin
          oldalign := setTextalign(handle, ta_left);
          textrect(rect, rect.left, rect.Top+3, s);
          setTextalign(handle,oldalign);
        end
      else                                                     //중앙 정렬
        begin
          pos := ((rect.Right - rect.Left) - textwidth(s)) div 2;
          textrect(rect, rect.Left+pos, rect.Top+3, s);
        end;
    end;
  end;
 
end;
 

어느부문에 오류가 있어서 발생한 것인가요?

고수님들의 고귀한 해결책 부탁드립니다.

감사합니다.

 

 

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 15767
공지 유용한 관련 사이트 관리자2 2014.03.20 54580
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 97988
3099 Component들이 보이지 않습니다. secret 변보언 2013.01.22 2
3098 Form Button 클릭 이벤트에서 IE 실행 문의 [1] drpark 2013.01.28 7923
3097 Begin-end 16장 한글깨짐 현상에 대한 질문 file funny 2013.01.28 7733
3096 XE3 터치 확대/축소 문의 barcode0 2013.01.29 8260
3095 델파이에서 MIME mutipartRelated protocol를 사용하려면 어떻게 해야하나요? fromstog 2013.01.29 6953
3094 WebDeploy관련 메뉴가 없나요?? 프릭스미디어 2013.02.01 7903
3093 DelphiXE2에서 이전버젼들에서 작동하던 Code Insight 기능 등이 작동하지 않습니다. 늦바람 2013.02.12 7249
3092 미치겠어요.... XE line too long? 버그? file 이한 2013.02.19 8545
3091 한글 관련 질문 입니다 탄돌이 2013.02.20 7329
3090 Dll 안에 있는 폼에서 SpeedButton을 누르면 포커스가 사라지는 문제 file Accounting 2013.02.20 10185
3089 FM의 Grid의 타이틀을 멀티로 사용할려면? memc 2013.03.06 7710
3088 BDE administrator에 대한 문의입니다. [3] 오상헌 2013.03.14 10569
3087 비주얼 베이직 소스 변경 문의 드립니다. memc 2013.03.15 9465
3086 XE3 버전에서 class constructor, destrtuctor 와 initialization 섹션 사이에서 문제 발생.. Feelple(고재철) 2013.03.18 8458
3085 XE3 TTreeView에서 마지막 아이템이 선택안되는 버그 [1] Feelple(고재철) 2013.03.18 8127
3084 dbxora.dll 파일을 찾지 못합니다. [1] file 허지승 2013.03.20 10485
3083 AQTime을 제거하지 않고 사용하지 않도록 하는 방법을 알고 싶습니다. file 관리자 2013.03.20 8776
3082 \Devic\Harddisk2\DR2 에러 file 명진 2013.03.21 6889
3081 OSX 에서 파라미터 값을 받는 방법이 없을까요? sumily 2013.03.26 8355
3080 Tmemo 컨트롤에 대해서 sumily 2013.03.27 6992