Название: Интернационализация QHttp Отправлено: QCasper от Июль 24, 2007, 08:50 Код: http::http(QWidget *parent, Qt::WFlags flags) Вот простенький код. Он собирается Qt 4.3.0 под виндой. Проблема заключается в том, что сообщение, которое возвращает m_Http->errorString() вываливается на аглицком, несмотря на то, что qt_ru.qm я загружаю в main.cpp. Но, стоит поменять Код: m_Http->errorString() Код: qApp->translate("QHttp", m_Http->errorString().toAscii().constData()) P.S. вот и я добрался до полтыщи :) Название: Интернационализация QHttp Отправлено: SABROG от Июль 24, 2007, 10:21 Я уже ничему не удивляюсь при работе с Qt. Если что-то работает не так, то я пишу всё сам, паралельно отрепортив троллям. Уже не раз было такое, что приходилось тратить целый день, чтобы с нуля переписать кусок кода, который был почти закончен, но из-за багов/недоработок троллей не может быть завершен полностью.
Вот пример наглядный. Есть простенький диалог, на нем QTableWidget с тремя колонками кнопочки перемещения и удаления итемов. Задача такая, в последней колонке сделать в строке combobox. Я не хотел заморачиваться с моделями, т.к. диалог ну очень простой и большой важности для меня не представляет. Чтобы не морочиться с делегатами я стал разбирать пример Color Editor Factory и класс QItemEditorFactory. Поставил на тип QVariant::UInt свой ComboBox. Сделал OpenPersistentEditor, чтобы не тыкать мышкой два раза. Но то что получилось меня не устроило. Дело в том, что из класса Editor'a нет стандартной возможности изменить данные в итеме TableWidget'a, только ComboBox (или любой другой редактор). Данные в итеме меняются только в том случае, когда Editor закрывается, т.е. подтверждается выбор и combobox уничтожается. Это не сочитается с функцией OpenPersistentEditor. Хорошо думаю, пусть юзер тыкает 2 раза по итему, чтобы сделать выбор. Только прикол в том, что QItemEditorFactory работает только с Qt::DisplayRole. А мне надо, чтобы пользователь видел надписи типа "Дом", "Машина, "Работа", а не загадочные enumы типа "1","2","3". Я пихаю эти enum'ы в Qt::UserRole, соответственно в Qt::DisplayRole я вижу текстовые обозначения. Но, как я уже сказал, QItemEditorFactory работает только с Qt::DisplayRole, а именно с Qt::EditRole, но они взаимосвязаны и расклад этого не изменить. В итоге все это завершилось тем, что я пересел на QTableView + делегаты. А пока пересаживался - потратил еще один день. Название: Интернационализация QHttp Отправлено: ритт от Июль 26, 2007, 19:47 errorString заполняется везде таким макаром (кроме "Request aborted"):
QLatin1String(QT_TRANSLATE_NOOP("QHttp", "No server set to connect to") как думаешь, забыли везде tr() поставить или всё же в "Request aborted" забыли QT_TRANSLATE_NOOP ? Название: Интернационализация QHttp Отправлено: QCasper от Июль 27, 2007, 08:14 Цитата: "ритт" errorString заполняется везде таким макаром (кроме "Request aborted"): QLatin1String(QT_TRANSLATE_NOOP("QHttp", "No server set to connect to") как думаешь, забыли везде tr() поставить или всё же в "Request aborted" забыли QT_TRANSLATE_NOOP ? Я исходники не смотрел, но у меня и "Host %1 not found" не переводится Название: Интернационализация QHttp Отправлено: ритт от Июль 28, 2007, 01:59 "Host %1 not found" тоже помечен как QT_TRANSLATE_NOOP
честно говоря, я не могу придумать оправдание зачем тролли так поступают с неприоритетными сообщениями... может, у кого есть мысли? поделитесь. |