Russian Qt Forum
Май 03, 2024, 15:03 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2] 3 4   Вниз
  Печать  
Автор Тема: кнопка Apply не работает в ButtonBox  (Прочитано 21547 раз)
ритт
Гость
« Ответ #15 : Июнь 10, 2010, 01:03 »

возникает.... а что должен делать слот apply() стандартного  диалога ??

а что в наследующем его классе программист напишет, то и должен... от стандартных accept и reject в QDialog толку ровно 0 - они просто окно диалога закрывают, их все равно переопределять надо, аналогично и apply(), и остальные

accept и reject используются не только в качестве слотов.
а раз уж программист всё-равно будет наследоваться и чего-то там писать, на кой нужен пустой публичный слот? правильно, совсем не нужен...
Записан
Гурман
Гуру общения
******
Offline Offline

Сообщений: 1442

Qt 2.2, 3.3, 4.5, 4,7, 4.8, 5.3, 5.6, 5.9, 5.12


Просмотр профиля
« Ответ #16 : Июнь 10, 2010, 07:13 »

фишка была бы в том, что если в дизайнере взведен флажок у кнопки Apply или у еще нескольких других, и они сразу появились на окне, то они уже соединены с приемником - ради этого по лишней инструкции RET и записи в таблице виртуальных методов не сильно повредили бы... просто стало бы где-то чуть удобнее
Записан

2^7-1 == 127, задумайтесь...
BRE
Гость
« Ответ #17 : Июнь 10, 2010, 07:23 »

фишка была бы в том, что если в дизайнере взведен флажок у кнопки Apply или у еще нескольких других, и они сразу появились на окне, то они уже соединены с приемником - ради этого по лишней инструкции RET и записи в таблице виртуальных методов не сильно повредили бы... просто стало бы где-то чуть удобнее
Причем здесь таблицы виртуальных методов....
Что это даст? Возможность посильней размазать функционал по GUI? Так это очень плохая практика.
Записан
Гурман
Гуру общения
******
Offline Offline

Сообщений: 1442

Qt 2.2, 3.3, 4.5, 4,7, 4.8, 5.3, 5.6, 5.9, 5.12


Просмотр профиля
« Ответ #18 : Июнь 10, 2010, 08:13 »

Цитировать
Что это даст?

некоторую дополнительную автоматизацию, отсутствие необходимости руками писать лишнюю пару строк, вместо рутины один клик - собственно для этого Дизайнер предназначен, если в ui_*.h посмотреть, то видно, от какой рутины он избавляет
Записан

2^7-1 == 127, задумайтесь...
BRE
Гость
« Ответ #19 : Июнь 10, 2010, 08:20 »

некоторую дополнительную автоматизацию, отсутствие необходимости руками писать лишнюю пару строк, вместо рутины один клик - собственно для этого Дизайнер предназначен, если в ui_*.h посмотреть, то видно, от какой рутины он избавляет
Сейчас в QDialogButtonBox 19 стандартных кнопок, большинство из которых не нужно обрабатывать в классе самого диалога. Для чего для них всех заготавливать пустые методы, которые в большинстве случаев никто не будет переопределять?
Вредно в GUI вставлять функционал. Диалог должен только показать что-то и вернуть выбор пользователя, никаких действий этот класс делать не должен. Кстати, как и любой другой GUI-элемент.
Записан
Гурман
Гуру общения
******
Offline Offline

Сообщений: 1442

Qt 2.2, 3.3, 4.5, 4,7, 4.8, 5.3, 5.6, 5.9, 5.12


Просмотр профиля
« Ответ #20 : Июнь 10, 2010, 09:27 »

из этих 19-ти несколько имело бы смысл автоматически связывать с соответствующими слотами в диалоге, потому как придется это делать

тут другая непонятка... в дизайнере кнопки надписаны праввильно, по-русски Отмена и Применить

но в приложении вылазит Cancel и Apply почему-то, хотя в остальных местах везде все верно, и локаль стоит разумеется Russian
Записан

2^7-1 == 127, задумайтесь...
BRE
Гость
« Ответ #21 : Июнь 10, 2010, 09:31 »

но в приложении вылазит Cancel и Apply почему-то, хотя в остальных местах везде все верно, и локаль стоит разумеется Russian
А ты переводы загружаешь?
Записан
Гурман
Гуру общения
******
Offline Offline

Сообщений: 1442

Qt 2.2, 3.3, 4.5, 4,7, 4.8, 5.3, 5.6, 5.9, 5.12


Просмотр профиля
« Ответ #22 : Июнь 10, 2010, 09:59 »

Цитировать
ты переводы загружаешь?

это translate() в .ui файле, который включается флажком translatable в дизайнере? да, разумеется это все есть
Записан

2^7-1 == 127, задумайтесь...
BRE
Гость
« Ответ #23 : Июнь 10, 2010, 10:00 »

это translate() в .ui файле, который включается флажком translatable в дизайнере? да, разумеется это все есть
Имеется ввиду .qm файл с переводом?
Записан
Гурман
Гуру общения
******
Offline Offline

Сообщений: 1442

Qt 2.2, 3.3, 4.5, 4,7, 4.8, 5.3, 5.6, 5.9, 5.12


Просмотр профиля
« Ответ #24 : Июнь 10, 2010, 10:34 »

а, не, это еще не делалось

но почему тогда в дизайнере берется "системная" надпись, а в приложении нет?

если нет файла перевода, Qt мог бы использовать надписи в соответствии с системной локалью (их же можно получить, если очень захотеть), а если есть, то из него
Записан

2^7-1 == 127, задумайтесь...
BRE
Гость
« Ответ #25 : Июнь 10, 2010, 10:42 »

но почему тогда в дизайнере берется "системная" надпись, а в приложении нет?
А дизайнер - молодец, он переводы загружает.  Улыбающийся

если нет файла перевода, Qt мог бы использовать надписи в соответствии с системной локалью (их же можно получить, если очень захотеть), а если есть, то из него
Вот эти надписи и хранятся в этих самых файлах с переводами.
Записан
Гурман
Гуру общения
******
Offline Offline

Сообщений: 1442

Qt 2.2, 3.3, 4.5, 4,7, 4.8, 5.3, 5.6, 5.9, 5.12


Просмотр профиля
« Ответ #26 : Июнь 10, 2010, 11:15 »

ИМХО - граздо лучше, если бы в дизайнере можно было редактировать надписи на кнопках в редакторе свойств QDialogButtonBox, там где флажки включения кнопок устанавливаются

тогда я бы там просто по локали вписались автоматом русские надписи, а потом, когда надо будет переводить, уже сменились на английские

а так мне теперь еще строки кода добавлять, чтобы надписи по-умолчанию были на русском... лишние сущности...
Записан

2^7-1 == 127, задумайтесь...
BRE
Гость
« Ответ #27 : Июнь 10, 2010, 11:20 »

а так мне теперь еще строки кода добавлять, чтобы надписи по-умолчанию были на русском... лишние сущности...
А для чего тогда использовать QDialogButtonBox?
Ну и добавь на диалог QPushButton.

Но все же это не очень хорошая практика. В программе лучше все строки задавать на английском и делать файлы переводов для разных языков. Проблем меньше будет.
Записан
Гурман
Гуру общения
******
Offline Offline

Сообщений: 1442

Qt 2.2, 3.3, 4.5, 4,7, 4.8, 5.3, 5.6, 5.9, 5.12


Просмотр профиля
« Ответ #28 : Июнь 10, 2010, 11:24 »

у меня основной заказчик - русский, и требование его - русский интерфейс, с возможностью перевода на другие языки, отсюда и танцуем

не переводить же каждый раз с английского на русский, при каждой промежуточной демонстрации или сдаче этапа...
Записан

2^7-1 == 127, задумайтесь...
Kolobok
Гость
« Ответ #29 : Июнь 10, 2010, 11:25 »

А стандартные диалоги ты как переводить будешь?
Записан
Страниц: 1 [2] 3 4   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.088 секунд. Запросов: 23.