Поучить Device Context
Как можно правильно получить Device Context устройства?
что здсь не так?
А если такЖ, то почему здесь ошибка:
{
LineTo(this->GetDeviceContext(this->Handle) ,100,100);
}
Заранее спасибо!
Лучше запустите сами. Вот полный листинг:
{
int c = GetTickCount();
for (int i=1; i < 10000 ;i++)
{
LineTo(this->GetDeviceContext(this->Handle) ,100,100);
}
Button1->Caption = GetTickCount() - c;
}
{
int c = GetTickCount();
for (int i=1; i < 1000 ;i++)
{
LineTo(this->GetDeviceContext(this->Handle) ,100,100);
}
Button1->Caption = GetTickCount() - c;
}
Ошибки нет (хотя код выполняется подозрительно медленнее, чем простой вызов канвас вместо апи lineto):
Canvas->MoveTo(0,0);
Canvas->LineTo(100,100);
так они же не принадлежат ни к какому классу.
что значит область видимости? Они везде видимы... не понимаю
что значит область видимости? Они везде видимы... не понимаю
Жжошь.
Данное исключение генерируется в случае невозможности выделить память под затребованные программой ресурсы. Что вобщем-то вполне нормально - в чем глубинный смысл приведенного кода - только автору известно. Остальной коммент просто опускаю - ввиду первой цитаты. Один хрен, говорить человеку, о том что в среде разработки есть такая штука как отладчик, бесполезно, если базовые понятия языка от него далеки.
З.Ы. Кстати, как легко убедится - ошибка возникает и во втором случае. Достаточно нажать на кнопку более чем ... раза.
{
HANDLE DC = this->GetDeviceContext(this->Handle);
int c = GetTickCount();
for (int i=1; i < 10000 ;i++)
{
LineTo( DC,100,100);
}
Button1->Caption = GetTickCount() - c;
ReleaseDC(this->Handle,DC);
}
Правда не понятно наличие цикла - но это видимо какаято фича аффтора.
И закрытие контекста
Спасибо! Разобрался +