Улучшение отображения TImage в TScrollBoxDelphi , Компоненты и Классы , TScrollBoxУлучшение отображения TImage в TScrollBox При работе с компонентом TScrollBox в Delphi часто возникает потребность в отображении статического изображения, которое не должно прокручиваться вместе с содержимым ScrollBox. Вопрос, заданный пользователем Arnold, как раз и связан с этой проблемой. Arnold пытался добавить TImage на ту же панель, что и TScrollBox, но не мог увидеть назначенное изображение, даже используя метод BringToFront. В качестве альтернативного ответа было предложено показать код, где bitmap назначается TImage, а также уточнить, что пользователь хочет поместить изображение перед содержимым ScrollBox, не позволяя ему прокручиваться. Подтвержденный ответ заключается в том, что TImage является потомком TGraphicControl и не имеет оконного хэндла, вследствие чего он не может отображаться перед оконным контролем, таким как TScrollBox. Чтобы решить эту проблему, TImage следует поместить на TPanel, имеющий хэндл, и расположить этот TPanel перед TScrollBox (с тем же родительским элементом). Комментарий Arnold указывает на то, что он нашел код для создания прозрачного TPanel (http://www.martinstoeckli.ch/delphi/delphi.html), и при установке свойства Image.Transparent в true, bitmap показывает фон. Это именно то, что Arnold хотел добиться. Давайте рассмотрим пример кода, иллюстрирующий данное решение:
В данном примере мы создаем TScrollBox, TPanel и TImage на форме. В обработчике события FormCreate мы назначаем bitmap TImage, устанавливаем свойство Transparent для TImage и TPanel, добавляем TImage на TPanel, а затем добавляем TPanel в TScrollBox. Благодаря этому, bitmap останется на фиксированной позиции, даже когда содержимое TScrollBox прокручивается. Таким образом, мы успешно решили проблему, с которой столкнулся Arnold, и предоставили пример кода, иллюстрирующий улучшенное отображение TImage в TScrollBox. Контекст: Вопрос пользователя Arnold связан с проблемами отображения TImage в TScrollBox в Delphi, где TImage не отображается и не прокручивается вместе с содержимым ScrollBox, и предлагаемые решения включают размещение TImage на прозрачном TPanel для ото Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: TScrollBox ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |