![]() |
|
![]() ![]() ![]() |
|
stmamont |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 343 Регистрация: 13.3.2004 Где: влг Репутация: 3 Всего: 3 |
база данных хранит число типа real
например 123.1 если я делаю запрос (через адо конечно же), а потом double t = mQuery->FieldByName("limit1")->AsFloat; то в t лежит что то типа 123.99992234532 Как мне сделать что бы отображалось нормально? В DataGrid таже самая проблема. Очень нужно решение этой мини проблемки) |
|||
|
||||
Klin |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1938 Регистрация: 7.10.2002 Где: Краснодар Репутация: 20 Всего: 25 |
ИМХО компьютер не хранит число 4, он хранит, что-то типа 3,99987
-------------------- Я человек - попробуйте обвинить меня за это. |
|||
|
||||
stmamont |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 343 Регистрация: 13.3.2004 Где: влг Репутация: 3 Всего: 3 |
когда делаю запрос через phpPgSql - все так и есть как записал т.е. 123.1
а когда отображаю инфу через ADO , то получается такой бред. как мне отображать нормально, т.е. 123.1? |
|||
|
||||
codelord |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 777 Регистрация: 7.5.2005 Где: ты моя темноглаза я где?! Репутация: 16 Всего: 39 |
вот накидал функцию,
Это сообщение отредактировал(а) codelord - 29.4.2007, 21:59 |
|||
|
||||
Vyacheslav |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
Это ошибка не гриде, а в голове, когда полагают, что предствление числа в бинарном виде и форма вывода числа - это одно и то же. И для чего? Конкретная задача должна иметь конкретное и простое решение. Посказка. 1. Для TQuery можно создать колекцию требуемых TField в дизайне. Кстати , профессионалы именно так обычно и делают. А для Field можно задать требуемый форма вывода: например фиксированный с двумя цифрами после запятой. -------------------- С уважением, Вячеслав Ермолаев |
|||
|
||||
stmamont |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 343 Регистрация: 13.3.2004 Где: влг Репутация: 3 Всего: 3 |
codelord, для округления числа есть функция RoundTo из Math.hpp
Vyacheslav, да понимаю я что проблемы не в хранении числа, а в выводе, у меня и TQuery создается во время выполнения программы... как задать постоянный формат для Fields сразу после кода, где создается TQuery? ? я попробовал сделать так:
а потом делать SQL запрос, но у меня не получилось,
на последней строчке ругается на то что Field "id" не найдено |
||||
|
|||||
FFFFFFF7 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 167 Регистрация: 13.10.2006 Репутация: 2 Всего: 2 |
его нет в объекте, хоть и есть в запрсе. прочитайте внимательнее. лол //по сабжу: На крайняк есть RoundTo(). --------------------
Да помоги кодеру, а значит - ближнему своему! |
|||
|
||||
stmamont |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 343 Регистрация: 13.3.2004 Где: влг Репутация: 3 Всего: 3 |
FFFFFFF7,
а это что?
я добавил id ага. по всей программе, во всем полях и datagrid'ах. прикольно наверное. больше интересует решенеи с предустановкой TFields после создания кода. Помогите! почему мой код не работает??? завтра уже нужно показать, а тут такой косяк!!! |
|||
|
||||
Vyacheslav |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
Когда я встречаю подобные фразы, у меня возникает вопрос:"А нафига?" Кончено бывают случаи, когда есть смысл это делать в рантайме, но в большинстве случаев - это просто понты. Вы можете привести реальные причины, побудившие Ваc принять такое решение? Добавлено через 6 минут и 32 секунды
Ну какие Вы все таки беспомощные. Нежели трудно хелп поглядеть. Тем более, что подсказка уже была
Открываем хелп для TFloatField и находим проперти DisplayFormat -------------------- С уважением, Вячеслав Ермолаев |
||||
|
|||||
stmamont |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 343 Регистрация: 13.3.2004 Где: влг Репутация: 3 Всего: 3 |
В общем, у меня "почти" получилось сделать то, что я хотел.
Делается это следующим образом в моем случае
и после этого, делаю sql запрос и продолжаю работать. Отображение в DataGrid'е, DBEdit'е теперь именно такое как нужно. Но когда я пробую
все по старому Вопрос: Как сделать чтобы DisplayFormat распространялся не только на DataControls? |
||||
|
|||||
Vyacheslav |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
Эхх
![]()
Добавлено через 7 минут и 34 секунды Кстати, для гибкости работы с полями существуют еще события
С помощью которых, можно вообще подменять то, что будет выводится в контролах. -------------------- С уважением, Вячеслав Ермолаев |
||||
|
|||||
bas |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 446 Регистрация: 14.8.2002 Где: Молдова, Кишинев Репутация: нет Всего: 2 |
Добавлено через 2 минуты и 26 секунд А почему не воспользоваться CAST в запросе? |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++ Builder" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C++ Builder | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |