newsare.net
Вы когда-нибудь копировали код кастомного контрола из статьи, чтобы избавиться от мерцания, а потом обнаруживали, что он ломает совместимостКак не сломать VCL, делая кастомный контрол
Вы когда-нибудь копировали код кастомного контрола из статьи, чтобы избавиться от мерцания, а потом обнаруживали, что он ломает совместимость, требует специфичных обработчиков и не работает в условной компиляции?Я — да. И, как оказалось, проблема не в Windows API или GDI, а в фундаментальной ошибке проектирования: попытке «улучшить» стандартный интерфейс VCL, изменив сигнатуру OnPaint.В этой статье я объясню, почему передача Canvas и Rect в обработчик — плохая идея, как правильно расширять TWinControl, и почему лучший компонент — тот, который пользователь даже не замечает. Читать далее Read more











