Название: как лучше использовать диалоги, если их требуется много Отправлено: ranet от Сентября 25, 2009, 15:29 Нужен "политический" совет, как правильнее поступить в том случае, если есть одно главное окно приложения и несколько модальных диалогов (не меньше десятка, для разных таблиц)?
1) Создать все диалоги при старте приложения, и по мере необходимости показывать/прятать? 2) Создавать по одному по мере необходимости, и уничтожать когда диалог становится не нужен? Или лучше прятать? Название: Re: как лучше использовать диалоги, если их требуется много Отправлено: Alp от Сентября 25, 2009, 15:55 1. Есть ли требования ко времени старта приложения? Если есть - диалоги при загрузке создавать нельзя, только в другом потоке. Если нету - проще создать сразу.
2. Какова вероятность того, что какие-то из них не будут открыты? Если велика - имеет смысл создавать диалоги на ходу (особенно, если они не потребуют много времени на создание). 3. Зачем уничтожать созданный диалог? Скрыть его и все. Если диалог имет родителя (а он его должен иметь, иначе модальность немодальной получится), при удалении родитель удалит всех своих детей. Название: Re: как лучше использовать диалоги, если их требуется много Отправлено: cya-st от Сентября 25, 2009, 20:05 Я считаю, что не имеет смысла держать все диалоги в памяти. Это кощунство. :(
Название: Re: как лучше использовать диалоги, если их требуется много Отправлено: ufna от Сентября 25, 2009, 20:44 хз, мелкие диалоги проще всего создавать/удалять по мере необходимости, на то они и мелкие.
крупные, долгостроящиеся - тут уже в зависимости от удобства для юзера. Название: Re: как лучше использовать диалоги, если их требуется много Отправлено: Igors от Сентября 25, 2009, 20:55 Обычно "наследуется" логика модальности: немодальный лучше скрывать/показывать, модальный лучше (пере)создавать. В любом случае грузить из ресурсов очень привлекательно. По поводу "расходов": если нет чего-то "особенного", такого как:
- больших картинок - большого числа QGraphicsItem - большого числа строк в лист/комбо боксах То расходы (как по памяти так и по скорости создания) несущественны даже на скромном железе Название: Re: как лучше использовать диалоги, если их требуется много Отправлено: cya-st от Сентября 25, 2009, 21:19 ... Если диалоги для таблиц, то вероятней всего диалог будет ресурсоемким. Лучше всего не парится, а создавать диалоги динамически.модальных диалогов (не меньше десятка, для разных таблиц)? ... Название: Re: как лучше использовать диалоги, если их требуется много Отправлено: ranet от Сентября 25, 2009, 23:52 Обычно "наследуется" логика модальности: немодальный лучше скрывать/показывать, модальный лучше (пере)создавать. В любом случае грузить из ресурсов очень привлекательно. По поводу "расходов": если нет чего-то "особенного", такого как: Именно так, ничего перечисленного не хочу делать - не требуется пока. Просто таблиц много, структура - разная, просмотр я собрался сделать в QTableView на главном окне приложения (выбрали другую таблицу - перезаполнили из неё QTableView), но для удобства редактирования (юзабельность превыше всего) я хочу еще и диалоги редактирования сделать (многим так больше нравится). То есть выбрали запись в QTableView, нажали кнопочку, и появился диалог (несколько QLineEdit'ов, QPushButton'ов и QLabel'ов), редактируем в нем одну запись таблицы, не больше. Вобщем понятно, СПАСИБО!!!- больших картинок - большого числа QGraphicsItem - большого числа строк в лист/комбо боксах То расходы (как по памяти так и по скорости создания) несущественны даже на скромном железе Наверное сделаю так, что диалог будет создаваться при первом обращении к нему, и прятаться, если перестал быть нужен. А уничтожать его наверное стоит в случае выбора другой таблицы.. хотя может и не обязательно, если расходы по памяти небольшие.. |