pva
29-01-2012, 14:10
Рассматриваю варианты клонирования заранее заданного диалога (или окна с контролами) с изменяемыми данными. Что-то вроде списка из карточек. Варианты следующие:
1) так же как сделаны списки в java beans:
есть один диалог, которому перед прорисовкой каждого элемента устанавливаются свойства. Затем диалог перемещается на нужную позицию и перерисовывается.
достоинства: требуется только один диалог (меньше расход ресурсов WinUser)
недостатки: все контролы хотят перерисоваться сразу же, при подмене текста или стиля контрола (установка GWL_STYLE) возможны неоправданные затраты. Приходится каждому контролу отключать, а затем включать перерисовку
вопросы: можно ли как-то облегчить эту процедуру?
2) раскопировать диалоги
достоинства: противоположные недостаткам варианта 1
недостатки: противоположные достоинствам варианта 1
вопросы: а может этот вариант лучше?
3) не полагаться на WinApi, а делать всё (обработку диалогов) самому
достоинства: вроде как нет лишних действий
недостатки: придётся дублировать часть функционала GUI винды
помогите определиться
1) так же как сделаны списки в java beans:
есть один диалог, которому перед прорисовкой каждого элемента устанавливаются свойства. Затем диалог перемещается на нужную позицию и перерисовывается.
достоинства: требуется только один диалог (меньше расход ресурсов WinUser)
недостатки: все контролы хотят перерисоваться сразу же, при подмене текста или стиля контрола (установка GWL_STYLE) возможны неоправданные затраты. Приходится каждому контролу отключать, а затем включать перерисовку
вопросы: можно ли как-то облегчить эту процедуру?
2) раскопировать диалоги
достоинства: противоположные недостаткам варианта 1
недостатки: противоположные достоинствам варианта 1
вопросы: а может этот вариант лучше?
3) не полагаться на WinApi, а делать всё (обработку диалогов) самому
достоинства: вроде как нет лишних действий
недостатки: придётся дублировать часть функционала GUI винды
помогите определиться