Как мне создать маску для числового поля? |
Здравствуйте, гость ( Вход | Регистрация )
Как мне создать маску для числового поля? |
mva |
13.9.2009, 16:42
Сообщение
#1
|
Участник Группа: Участник Сообщений: 104 Регистрация: 15.3.2009 Из: Киров Пользователь №: 615 Спасибо сказали: 3 раз(а) Репутация: 0 |
Доброго времени суток всем! Поздравляю всех с Днем Программиста!
В моей БД на PostgreSQL в некоторых таблицах есть числовые поля типа NUMERIC(10, 3). Ну или NUMERIC(12, 2), например. При использовании QTableView они нормально отображаются, с тремя или двумя знаками после запятой. Но при редактировании этих полей не работает маска ввода, т.е. в поле можно вводить все что угодно. Хотелось бы, чтобы пользователь сразу видел маску ввода чисел. Проблема в том, что я не знаю, где эту маску можно получить. Фунция QSqlField::precision(), на которую я рассчитывал, возвращает -1. Кто-нибудь может помочь? |
|
|
Litkevich Yuriy |
14.9.2009, 9:08
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
mva, попробуй подключится к БД с помощью демки sqlbrowser, в ней по щелчку правой кнопкой мыши по имени таблицы, в котекстном меню можно выбрать "схему", и в табличном представлении отобразятся свойства полей, в частности тип данных Qt, который используется для каждого поля. Это может помочь разобратся с проблемой.
У меня подобная проблема была с Firebird. И через QODBC, как оказалось, более удачное представление данных чем QIBase, но только в Qt 4.4.3 |
|
|
mva |
14.9.2009, 13:09
Сообщение
#3
|
Участник Группа: Участник Сообщений: 104 Регистрация: 15.3.2009 Из: Киров Пользователь №: 615 Спасибо сказали: 3 раз(а) Репутация: 0 |
mva, попробуй подключится к БД с помощью демки sqlbrowser, в ней по щелчку правой кнопкой мыши по имени таблицы, в котекстном меню можно выбрать "схему", и в табличном представлении отобразятся свойства полей, в частности тип данных Qt, который используется для каждого поля. Это может помочь разобратся с проблемой. Для моих полей я получаю ту же информацию, что и с помощью QSqlField.type(), а именно: поля имеют тип double, precision = -1. Как извлечь из этого маску - непонятно. |
|
|
Текстовая версия | Сейчас: 15.1.2025, 2:55 |