Название: QSettings сохраняет через раз. Отправлено: altVis от Февраль 06, 2008, 00:41 Вечер добрый.
Столкнулся со следующей проблемой. Есть функция, которая выолняется после нажатия кнопки. В ней создаётся локальный QSettings, но сохраняет настройки почему-то только после двойного нажатия кнопки. Функция вызывается всегда, проверял с qDebug. qsettings естественно, как локальная переменная удаляется после завершения функции. Может, кто сталкивался с подобной проблемой? Спасибо. :) Название: Re: QSettings сохраняет через раз. Отправлено: ритт от Февраль 06, 2008, 02:56 версия кутэ и код?
Название: Re: QSettings сохраняет через раз. Отправлено: altVis от Февраль 06, 2008, 13:24 qt 4.3.3
код например: void saveF() { QSettings settings(QSettings::IniFormat, QSettings::UserScope, "a", "b"); settings.setValue("mainwindow/saveSizPos", size); } Эта функция вызывается в: void on_okButton_clicked() Название: Re: QSettings сохраняет через раз. Отправлено: pastor от Февраль 06, 2008, 15:04 Никогда таких проблем не замечал, покрайней мере с версии 4.2.3. Сейчас юзаю 4.3.3. Тоже проблем нет.
Не поленился проверил ваш код. Все замечательно работает. Записало с первого раза. Название: Re: QSettings сохраняет через раз. Отправлено: altVis от Февраль 06, 2008, 17:03 Ещё хотел бы узнать, что лучше с точки зрения производительности.
Есть окно настройки, в котром будет довольно большое количество виджетов. Лучше будет сохранять всегда текущее состояние всех виджетов(я как понял, если значение не изменилось, то QSettings не редактирует файл, но считывает с него) или же только изменивших своё состояние( тогда придётся на каждый создавать условие)? Что требует больше ресурсов? Название: Re: QSettings сохраняет через раз. Отправлено: AlekSi от Февраль 07, 2008, 22:17 Не надо говорить о производительности раньше профайлера!
В твоём случае лучше не париться и писать в QSettings всё - избавит от многих проблем. Название: Re: QSettings сохраняет через раз. Отправлено: pastor от Февраль 07, 2008, 22:27 +1
Я полностью согласен с AlekSi. При большом кол-ве виджетов, проверками ты ничего не выиграешь, имхо Название: Re: QSettings сохраняет через раз. Отправлено: Dodge от Февраль 11, 2008, 17:01 Я конешно сори)
но QSettings::sync() отменили чтоли? 0_о Название: Re: QSettings сохраняет через раз. Отправлено: altVis от Февраль 13, 2008, 20:42 sync() пробовал.
проблему уже давно решил ;) Название: Re: QSettings сохраняет через раз. Отправлено: Dodge от Февраль 13, 2008, 21:31 sync() пробовал. Тк нада поделится решением проблемы, чтоб больше подобных вопросов не возникало ;Dпроблему уже давно решил ;) Название: Re: QSettings сохраняет через раз. Отправлено: altVis от Февраль 15, 2008, 13:43 Использую иногда для просмотра kwrite. Если файл был изменён какой-то программой, то kwrite показывает, что файл был редактирован и предлагает перезагрузить его, тем самым избавляя от закрытия и открытия файла.
Но qsettins видимо не хочет сохранять, пока файл не станет полностью свободен, т.е. пока никакой процесс не будет его использовать. Вот и обманывался :D |