|
Canvas에 출력한다음에
Control->Repaint();한번 호출해 보세요.
화면 업데이트가 안되서 그럴 수도 있거든요..
아니면 pCanvas->Refresh()도 함 써보시고요.
그리고..
Canvas를 사용하신다면 BitBlt보다는 canvas의 Draw메소도를 사용하시는게 좋지 않을거 같네요.
그럼.. 잘 해결되시길.. ^^
박상열 님이 쓰신 글 :
: 안녕하세여
: 각각 다른 값을가지는 if문이 3개가 있걸랑요
:
: //사용자의 지금의 접속상태에 따라 이미지 변경
: AnsiString ast,ast1;
:
: TCanvas *pCanvas = ((TListBox *)Control)->Canvas;
: BitBlt( pCanvas->Handle ,Rect.left+15,Rect.top,32,24, Image2->Canvas->Handle ,0,0 ,SRCCOPY );
: pCanvas->TextOut(Rect.Left+30, Rect.Top+2, ((TListBox *)Control)->Items->Strings[Index]);
:
: for ( int cnt=0;cnt<Register->ListBox1->Items->Count; cnt++ ) {
: ast= Register->ListBox1->Items->Strings[cnt];
:
: if(ast.SubString(113,7)=="DEFAULT"){
: BitBlt( pCanvas->Handle ,Rect.left+90,Rect.top,50,15, Image3->Canvas->Handle ,0,0 ,SRCCOPY );
: }
: if(ast.SubString(113,4) =="AWAY"){
: BitBlt(pCanvas->Handle , Rect.Left+90,Rect.top,50,15, Image4->Canvas->Handle ,0,0, SRCCOPY);
: }
: if(ast.SubString(113,7) =="NOANSER"){
: BitBlt(pCanvas->Handle , Rect.Left+90,Rect.Top,50,15, Image5->Canvas->Handle ,0,0, SRCCOPY);
: }
: }
:
:
: 이렇게 했는데여
: 그러니까 DEFAULT일때는 이미지1을 찍어주고
: AWAY 일때는 이미지2 NOANSER일때는 이미지3을 찍어주고 싶은데여
: 무조건 다똑같이 한가지 이미지가 그려지거든요
:
: 잘못된건 알지만 어디서 잘못됬는지 잘감이 안오네여..
: 답변좀 부탁드릴께여
: 그럼
: 꾸..벅
|