|
저는 한개의 ScrollBox 컨트롤에 두개의 이미지를 보여주어야 합니다.
그래서 image컨트롤은 Form의 따른 부분에 따로 빼고,
Scrollbar 안에 Paintbox컨트롤을 두개를 넣어서 보여주는데요.
그래서 첫번째 이미지의 width를 알아내서..
두번째 보여주어야 할 PaintBox->Left를 기존 PaintBox->Width + 20을 했습니다.
처음 버튼을 클릭하여 보여주면 연달아서 잘 보여지는데요..
스크롤을 조금이라도 움직인 상태에서 다시 Load 버튼을 누르면,
두번째 이미지는 원하는 위치가 아닌 움직인 스크롤 크기가 더해져서..
첫번째 이미지보다 마니 뚝~ 떨어져서 표현됩니다..
왜 그럴까요?
ScrollBox Properities에서 무엇을 설정을 해야 하나요?
아래 소스가 있습니다.
고수님을 쪼금 봐주세요~~~.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Image1->Picture->LoadFromFile("D:/20020410.bmp");
Image2->Picture->LoadFromFile("D:/20020410.bmp");
PaintBox1->Width = Image1->Width;
PaintBox2->Width = Image2->Width;
PaintBox2->Left = PaintBox1->Width + 20;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::PaintBox1Paint(TObject *Sender)
{
PaintBox1->Canvas->Draw(0,0,Image1->Picture->Graphic);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::PaintBox2Paint(TObject *Sender)
{
PaintBox2->Canvas->Draw(0,0,Image2->Picture->Graphic);
}
//---------------------------------------------------------------------------
|