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

본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------

 


안녕하세요

빌더 v10.2 사용 유저입니다.

스트링 그리드 생성해서 특정 셀의 글자 색을 변경하는 것이 최종 목적입니다.

일단 셀에 문자를 읽어서 특정 문자가 있으면 변경해주는 기능인데 하루종일 아무리 시도해보아도 해결이 안되네요

 

/////////////////////////////////////////////////////////////

추가사항으로 셀에 쓰기전에 Font color를 변경하여 보아도 색이 안변하네요... 이부분만 해결되면

아래 소스구조는 필요없을듯 한데요... 이부분도 문의드립니다.

 

AlarmGrid->Canvas->Font->Color = clRed;

AlarmGrid->Cells[2][j] = AlarmGrid->Cells[2][j-1];

/////////////////////////////////////////////////////////////

 

아래 소스코드 참조부탁드립니다.

도움  기다리겠습니다.

감사합니다.

 

void TAlarmHistoryForm::ReadHistory(void)
{
 BYTE TempBuf=0;
 //AnsiString strTmp;
 //String strTmp;
 UnicodeString strTmp;
 char i, Step=0;
 TRect   Rect;

 for(int j=1; j<HisPos+1;j++){
  AlarmGrid->Cells[0][j] = j;
 }

 AlarmColorStep2=0;
 if(HisPos<HisCount){
  for(int j=HisPos+1;j>1;j--){
   AlarmGrid->Cells[1][j] = AlarmGrid->Cells[1][j-1];    //시간


   strTmp=AlarmGrid->Cells[2][j-1].c_str();
   if(strncmp(strTmp,"Occur",5)==0){                    //에러 발생
    AlarmColorFlag=1;
   }
   else{
    AlarmColorFlag=0;
   }
   AlarmGrid->Cells[2][j] = AlarmGrid->Cells[2][j-1];   //내용  ->   AlarmGridDrawCell 이벤트 발생시 폰트색 결정
   //AlarmColorStep2++;
  }
 }

 if( HisPos == HisCount ){
  MessageBox(GetDesktopWindow(),_T("LOG DATA READ COMPLETE!") , _T("Message"), MB_OK | MB_SYSTEMMODAL);
 }
 else{
  TempBuf = ++HisTail;
  //if(HisTail>99)
  // TempBuf = HisTail-100;
  if(HisTail>199)
   TempBuf = HisTail-200;

  AlarmLogDataReq(TempBuf);
  d_AlarmRetry =1;
 }

}

 

 

void __fastcall TAlarmHistoryForm::AlarmGridDrawCell(TObject *Sender, int ACol, int ARow,TRect &Rect, TGridDrawState State)
{
 static char i=0;

 if(ARow==0)  return;
 if(ACol==2){
  //if(AlarmColorBuffer[AlarmColorStep2]==ALARM_OCCUR){        //0
  if(AlarmColorFlag){
   AlarmGrid->Canvas->Font->Color = clRed;
   AlarmGrid->Canvas->FillRect(Rect);
   //AlarmGrid->Canvas->TextRect(Rect,Rect.Left,Rect.Top,AlarmGrid->Cells[2][ARow-1]);
   AlarmGrid->Canvas->TextOut(Rect.Left,Rect.Top,AlarmGrid->Cells[2][ARow-1]);
  }
  else{
   AlarmGrid->Canvas->Font->Color = clBlue;
   AlarmGrid->Canvas->FillRect(Rect);
   //AlarmGrid->Canvas->TextRect(Rect,Rect.Left,Rect.Top,AlarmGrid->Cells[2][ARow-1]);
   AlarmGrid->Canvas->TextOut(Rect.Left,Rect.Top,AlarmGrid->Cells[2][ARow-1]);
  }
 }
}

 

 

 

 

 

 

 

 

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 15768
공지 유용한 관련 사이트 관리자2 2014.03.20 54582
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 97995
2419 [시작하는 사람들을 위한 델파이 프로그래밍] 모듈 23 - Exercise 3 [2] 관리자 2016.05.27 199
2418 Tcalendar 크기 조정 [3] 엔달 2018.01.16 199
2417 10.3으로 컴파일하면 스플래쉬에서 멈추고 끝납니다. [3] file 화이부동 2018.12.19 199
2416 데이터스냅 서버 또는 RAD서버 관련 질문 드립니다. [1] 유비케어 2020.08.31 199
2415 한번에 개발하는 안드로이드 질문입니다. [2] file youngdel 2016.04.20 200
2414 [시작하는 사람들을 위한 델파이 프로그래밍] 모듈 8 - Exercise 1 [2] 관리자 2016.05.02 200
2413 파이어몽키 apk배포에 대하여 [1] 나는프로그래머! 2017.10.19 200
2412 문자열에 들어있는 &는 표현이 안되나요? [2] 토끼왕 2019.10.09 200
2411 Delphi10 에서 bpl로 제작된 컴포넌트 Install 메뉴가 안보이는 문제. (64bit 컴파일) [1] 김재욱 2016.03.04 200
2410 [공유] 실행 중 도형등의 크기를 변경하려면 어떻게 하나요? 험프리 2016.03.21 200
2409 ems start 버튼 클릭시 [FireDAC][Phys][IB]I/O error for file [1] 느림보 2021.03.15 200
2408 빌더 오늘 갑자기 이상한 곳으로 링크되고 실행하기 어려울 정도로 나타납니다. [1] file 개성산전 2018.10.12 201
2407 델파이 RIO 안드로이드 백버튼시 종료문제 [1] silkroad99 2018.11.29 201
2406 Delphi 10(10.1) MongoDB Driver => SCRAM-SHA-1 지원기능여부 문의드립니다. Terry 2016.07.14 202
2405 비콘 컴포넌트를 이용한 어플에 대한 질문 드립니다. [1] file 한수 2016.12.07 202
2404 firedac에서 alias사용한 쿼리를 edit하면 에러가 나네요. [1] fraha 2019.09.25 202
2403 rs-232 통신이 안됩니다. [1] 쿠리 2019.09.27 202
2402 C++builder 10.1 Berlin DLL에 vcl 테마 적용 방법 정리 [1] file gildong 2020.04.03 202
2401 [XE8 웹세미나] 유니코드관련 델파이 마이그레이션 정보를 알고 싶습니다. Humphery 2015.05.13 202
2400 Edit의 NumbersOnly 속성 True일때 나오는 에러메세지 수정가능한가요? syc 2016.07.13 203