С++ Builder

Gabbahard

Member
Joined
Mar 10, 2004
Messages
13
Reaction score
0
Age
43
Location
Ярославль
Не наодном из форумов немогут дать нормальный ответ по работе с канвой.
Как избавиться от мерцания ?
код след:

void __fastcall TMainForm::StringGrid1DrawCell(TObject *Sender, int ACol,
int ARow, TRect &Rect, TGridDrawState State)
{

div_t x;
x = div(j1,StringGrid1->ColCount);
StringGrid1->RowCount = x.quot+1;

div_t wx;
wx = div(MainForm->Width-201,150);
//StringGrid1->ColCount = wx.quot;

int X=0,Y=0,i=0;

//n = StringGrid1->ColCount * StringGrid1->TopRow; //От какого
//n=(StringGrid1->ColCount * x.quot) + (StringGrid1->ColCount * StringGrid1->TopRow); // До какого

for (int u=StringGrid1->ColCount * StringGrid1->TopRow;u<(((MainForm->Height - 123) / 150)+ StringGrid1->TopRow)* (StringGrid1->ColCount);u++)
{
if(u==j1) break;
Graphics::TBitmap *pBitmap = new Graphics::TBitmap();
try
{

TJPEGImage *jp = new TJPEGImage();
//ShowMessage(tot);
jp->LoadFromFile(tot);
jp->Scale = jsQuarter;
pBitmap->Assign(jp);
delete jp;
pBitmap->Width = 148;
pBitmap->Height = 148;
pBitmap->Modified = false;
}
catch (...)
{
ShowError(tot);
}
StringGrid1->Canvas->Draw(X+i+1,Y+1,pBitmap);
// StringGrid1->Canvas->TextOut(X+i+5,Y+82,id);
i++;

if(i<wx.quot)X=X+150;
else
{X=0;Y=Y+150;i=0;}
delete pBitmap;
}

}
 

GI80

Member
Joined
Aug 10, 2005
Messages
178
Reaction score
14
Age
44
Location
Москва
Smart sys, используй поиск по сайту. Если ничего нет - иди в раздел "Заказы". И что за дикий оффтоп? Штраф за него, соотвественно.
 
Last edited by a moderator:

GOre

New member
Joined
Aug 6, 2004
Messages
3
Reaction score
2
Age
42
В свое время решал эту проблему вот так:
Code:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
    TControlStyle st = StringGrid1.ControlStyle;
    st << csOpaque;
    StringGrid1.ControlStyle = st;
}
 

halfback

Member
Joined
Apr 25, 2004
Messages
21
Reaction score
0
Age
42
Gabbahard, почитай всякие там FAQ - думаю там этот вопрос рассмотрен. Просто я с такой же проблемой встретился в Делфи и решил ее в одном из факов. Удачи!!!
 
Top