Программно запускает перекрашения в приложениях для настольных компьютеров
]событие Paint имеет решающее значение для обновления графических пользовательских интерфейсов (GUI) в приложениях для настольных компьютеров. При динамическом изменении элементов, таких как текст на панели, вам нужно вручную запустить перекрашение, чтобы отразить эти изменения. Эта статья подробно описывает это.
]методы для ручного перекрашения
]Несколько методов в вашей форме или классе управления позволяют заставлять перекрасить:
] Invalidate ()
: этот метод планирует перекрасить контроль. Фактическое перераспределение происходит позже, что позволяет системе партии обновлений для эффективности. update ()
: это заставляет немедленное перекрашение в настоящее время недействительной области контроля. refresh ()
: это удобный метод, объединяющий Invalidate ()
и update ()
, что приводит к немедленной перекраске всего элемента управления.
] Выбор правильного метода вообще
Invalidate () предпочтительнее. Он позволяет системе оптимизировать операции по переработке, избегая ненужных перерывов и улучшая производительность. ]
используйте
только тогда, когда немедленное перекрашение является критическим, например, когда приложение временно блокирует цикл сообщения. Имейте в виду, что это может привести к многочисленным последовательным перекраски, если другие элементы управления также недействительны.
при обновлении свойств управления в циклах (например, [например,
label1.text в для
loop), с использованием update ()
может быть необходимо. Тем не менее, тщательное рассмотрение резьбы необходимо, чтобы избежать узких мест производительности и замораживания пользовательского интерфейса. Неправильное многопоточное чтение может привести к непредсказуемому поведению перекрашивания. ]
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3