powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как перерисовать компонент на форме.
13 сообщений из 13, страница 1 из 1
Как перерисовать компонент на форме.
    #39761165
FIL23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрых суток.

Динамически размещаю объекты на форме (в данном случае GroupBox). И вот когда он выходит за "рамки" на нем появляются артефакты.
Как можно перерисовать объект?

Прикреплю скриншот (сверху нормальный объект, снизу объект курильщика)

Спасибо.
...
Рейтинг: 0 / 0
Как перерисовать компонент на форме.
    #39761166
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FIL23,

GroupBox1.Update пробовал?
...
Рейтинг: 0 / 0
Как перерисовать компонент на форме.
    #39761168
FIL23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockFIL23,

GroupBox1.Update пробовал?

не помогает.

Этот артефакт возникает когда я двигаю компоненту (забыл написать). Я передвигаю компоненту за предположим левый край и появляются такие полоски.
...
Рейтинг: 0 / 0
Как перерисовать компонент на форме.
    #39761206
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FIL23,

Понятно, Form1.Update.
...
Рейтинг: 0 / 0
Как перерисовать компонент на форме.
    #39761504
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FIL23не помогает.

Этот артефакт возникает когда я двигаю компоненту (забыл написать). Я передвигаю компоненту за предположим левый край и появляются такие полоски.RTFM RedrawWindow() у парента
...
Рейтинг: 0 / 0
Как перерисовать компонент на форме.
    #39761507
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не надо маскировать симптомы, надо фиксить процедуру анимации перетаскивания.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как перерисовать компонент на форме.
    #39761538
Соколинский Борис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
А как ее профиксить?
Parent - тоже GroupBox, если он не перерисовывается, значит косяк в исходниках.
Проще всего Parent.Invalidate.
...
Рейтинг: 0 / 0
Как перерисовать компонент на форме.
    #39761552
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Соколинский БорисА как ее профиксить?
Parent - тоже GroupBox, если он не перерисовывается, значит косяк в исходниках.

Так же как и любого другого бага: правкой исходников.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как перерисовать компонент на форме.
    #39761562
Соколинский Борис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovТак же как и любого другого бага: правкой исходников. ИМХО, это очень плохая практика.
Если есть возможность - лучше обойтись.
...
Рейтинг: 0 / 0
Как перерисовать компонент на форме.
    #39761582
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovТак же как и любого другого бага: правкой исходников.Коль на то пошло - то фиксить баги в исходниках должен тот кто их написал. А фиксы в исходниках VCL неблагодарная вещь: проблемы в переездах на новую версию делфей, разница в логике run-time и design-time, возможны проблемы в third-party библиотеках
...
Рейтинг: 0 / 0
Как перерисовать компонент на форме.
    #39761609
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_niggerфиксы в исходниках VCL неблагодарная вещь

В исходниках VCL нет таскания контролов в рантайме, он обычно получается хаком с
использованием вообще-то для этого непредназначенного кода для дизайн-тайма.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как перерисовать компонент на форме.
    #39761678
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovВ исходниках VCL нет таскания контролов в рантайме, он обычно получается хаком с
использованием вообще-то для этого непредназначенного кода для дизайн-тайма.Возможно твой хрустальный шар мощнее. Я не знаю через что у ТС-а это сделано и кто на самом деле виноват.
...
Рейтинг: 0 / 0
Как перерисовать компонент на форме.
    #39761771
FIL23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Соколинский БорисПроще всего Parent.Invalidate.

Решил применить Invalidate на самом объекте (не на родителе)

GropeBox.invalidate;

Причем применяю его в момент когда двигаю объект.

Согласно документации применение Invalidate не дает потери в производительности.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как перерисовать компонент на форме.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]