|
안녕하세요? 또 질문을 올리는군요.
항상 질문만 하는것 같아 임프님께 죄송하지만 여기만큼 알찬 곳은 없는것 같아요.
이번엔 버튼을 누를때마다 새로 이미지를 불러오는 건데요, 물론 이전에 불러온 이미진 보전하면서요. 빌더 예제폴더에서 버튼을 누를때마다 Shape를 그리는 예제를 찾아 Shape대신 Image를 불러오도록 만들었습니다.
첨엔 단순히 Shape를 Image로 바꿔썼는데 실패했구요.
그래서 아래처럼 바꿨는데 이번엔 에러는 없지만 이미지가 나타나질 않습니다.
어디가 문젠지 모르겠습니다.
그냥 제생각대로만 코딩을 한거라 아주 틀린 방법일 수도 있지만
원본 코드와 제가 바꾼 부분(-->로 표시)을 같이 적어봤습니다. 한번 봐주세요.
void __fastcall TForm1::AddNewShape(int X, int Y, int Type)
{
TShape* ObjPtr=new TShape(this);
-->TImage* ObjPtr=new TImage(this);
ObjPtr->Parent=this;
ObjPtr->Top=Y;
ObjPtr->Left=X;
ObjPtr->Shape=(Extctrls::TShapeType)Type;
//여기가 젤 문젠데... TImageType은 Extctrls에 없더군요.사용법을 몰라서 대신
//아래처럼 바꿔봤습니다.
--> Graphics::TBitmap *Bitmap;
--> Bitmap = new Graphics::TBitmap();
--> pBitmap->TransparentMode = tmAuto;
--> Bitmap->LoadFromFile("D:\\kccm\\images\\mix.bmp");
--> ObjPtr->Picture->Graphic = Bitmap;
//add object to list
ObjectList->Add((void*)ObjPtr); // TList *ObjectList;로 선언
}
|