Size: a a a

2021 January 17

I

Inttech in Qt
Minmaxminor
Можете в кратце сказать чем cmake лучше, чем qmake?
наверно тем что его стандарт масса использует только
источник

k

kin63camapa in Qt
Иван
Добрый вечер, опять вопрос по локализации. Нужна смена языка в рантайме. Собственно сделал в менюшке выбор языка.  Нажимаю к примеру на английский, все виджеты, которые созданы с помощью дизайнера, хорошо переводятся, те же виджеты. Но к примеру есть QListWidget и QLabel, внутренний текст, которых изменяется во время работы. У них язык не меняется. Я так понимаю в changeEvent надо ручками каждый элемент переводить? QTranslator создается до создания виджетов.
по моему достаточно ручками ретранслейт дернуть если оно кувиджет
источник

И

Иван in Qt
kin63camapa
по моему достаточно ручками ретранслейт дернуть если оно кувиджет
Нет, такое не прокатывает. Я так понимаю надо как-то обновить все виджеты.
источник

k

kin63camapa in Qt
ну для каждого виджета ессно, у тя наверняка можно где то найти их листом например у лайаута или чилдрены у окна
источник

k

kin63camapa in Qt
ну если ты их конечно динамически не создаешь и не "забываешь" ссылку))
источник

И

Иван in Qt
kin63camapa
ну для каждого виджета ессно, у тя наверняка можно где то найти их листом например у лайаута или чилдрены у окна
А, т.е. к примеру в QWidget есть куча всяких лейблов и т.п. Т.е я в change event вызываю ретранслейт у главноего виджета, и потом по всем чидренам вызываю тот же retranslateUi()?
источник

k

kin63camapa in Qt
ну а ты как хотел дернуть ретранслейт у окна и чтоб все перевелось что ли? так это так не работает оно нужно для корректного управления памятью, это тебе не хтмл где свойства наследуются
источник

И

Иван in Qt
kin63camapa
ну а ты как хотел дернуть ретранслейт у окна и чтоб все перевелось что ли? так это так не работает оно нужно для корректного управления памятью, это тебе не хтмл где свойства наследуются
Ну я подозревал, оно по всем потомкам проходит внутри.
источник

И

Иван in Qt
Спасибо за помощь. Попробую..
источник

AS

Anatoly Shirokov in Qt
Иван
Добрый вечер, опять вопрос по локализации. Нужна смена языка в рантайме. Собственно сделал в менюшке выбор языка.  Нажимаю к примеру на английский, все виджеты, которые созданы с помощью дизайнера, хорошо переводятся, те же виджеты. Но к примеру есть QListWidget и QLabel, внутренний текст, которых изменяется во время работы. У них язык не меняется. Я так понимаю в changeEvent надо ручками каждый элемент переводить? QTranslator создается до создания виджетов.
ты пользуешься дизайнером для построения UI?
источник

AS

Anatoly Shirokov in Qt
просто все что ты создал в дизайнере уже содержит метод retranslateUi
источник

k

kin63camapa in Qt
ну я так понял у не все виджеты в дизайнере
источник

AS

Anatoly Shirokov in Qt
и тебе остается только дернуть его в обработчике события смены языка
источник

k

kin63camapa in Qt
дизайнер плох тем что там динамически мало что построишь
источник

RG

Renat Garaev in Qt
kin63camapa
а ты можешь собрать 64 битное приложение на 32 битном кьюте или наоборот?
Нужно использовать нужную версию битность для сборки 32 или 64 битного приложения. Но можно иметь 32 битную систему и в ней кроссбилдом из исходников собрать 64 битный qt
источник

AS

Anatoly Shirokov in Qt
kin63camapa
ну я так понял у не все виджеты в дизайнере
Тогда  для своего видгета надо определить обработку languagechange:

void MyWidget::changeEvent (QEvent *event)
{
if (e->type() == QEvent::LanguageChange)
{
titleLabel->setText (tr ("Document Title"));
okPushButton->setText (tr ("&OK"));
}
else
QWidget::changeEvent(event);
}
источник

𝔾ℝ

𝔾𝕣𝕒𝕪 ℝ𝕒𝕧𝕖𝕟... in Qt
qq
Какую сборку используете вы?
Анонимный опрос
0%
QMake
0%
CMake
Проголосовало: 107
Для "повседневной" сборки использую qmake, а если надо собрать под "ведро", тогда CMake использую
источник

k

kin63camapa in Qt
Renat Garaev
Нужно использовать нужную версию битность для сборки 32 или 64 битного приложения. Но можно иметь 32 битную систему и в ней кроссбилдом из исходников собрать 64 битный qt
и что прям 64 битный кумейк запустится при сборке или я чот не понимаю?
источник

k

kin63camapa in Qt
Anatoly Shirokov
Тогда  для своего видгета надо определить обработку languagechange:

void MyWidget::changeEvent (QEvent *event)
{
if (e->type() == QEvent::LanguageChange)
{
titleLabel->setText (tr ("Document Title"));
okPushButton->setText (tr ("&OK"));
}
else
QWidget::changeEvent(event);
}
это @rhaut не мне
источник

И

Иван in Qt
Anatoly Shirokov
ты пользуешься дизайнером для построения UI?
Так получилось, что мне выдали это уже. Нужно сделать чисто локализацию. Т.е да там в дизайнере макет накидан, и внутри уже заполняется динамически в зависимости от условий.
источник