Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.07.08;
Скачать: [xml.tar.bz2];

Вниз

Как изменить формат данных в TDBEdit   Найти похожие ветки 

 
Eraser   (2002-06-08 00:15) [0]

Данные из числового поля БД в TDBEdit выводится в виде:
66,98477563783298, а нужно 66,98. Никак не могу понять как?
И еще вопрос вдогонку - надо чтобы числа располагались справа в TDBEdit?
Заранее благодарен.


 
kaif   (2002-06-08 01:08) [1]

Это делается не на уровне TDBEdit, а на уровне TDataSet. Нужно создать persistent поля, если они еще не созданы. И у соответствующего поля придать сзначения свойствам:
Align = taRightJustify и DisplayFormat = "### ### ##0.00"


 
Eraser   (2002-06-08 12:21) [2]

А поподрбнее можно для тех кто в танке. Я в TDBEdit данные добавляю так:
DBEdit1->DataField = DataModul->ADOQuery->Fields->Fields[i]->FieldName;
работаю через ADO


 
Anatoly Podgoretsky   (2002-06-08 12:30) [3]

В D5 нет такого синтаксиса


 
Eraser   (2002-06-08 12:52) [4]

Ну каюсь это написано на Builder5, но принцип то должен быть тот же что и в D5?


 
angelcom   (2002-06-15 13:43) [5]

Я делал следующее:

//////////////////////////////////////////////////////////////////
function Okrug(a1: ShortString;b1:ShortString): ShortString;
var
a: Variant;
s,s1,s2,s3,s4,s5,s6,s7:String;
begin
if (b1="1") or (b1="10") or (b1="100") or (b1="1000") then
if a1>"" then
begin
s:=a1;
s1:=copy(s,1,1);
while (s1<>",") and (s>"") do
begin
s2:=s2+s1;
delete(s,1,1);
s1:=copy(s,1,1);
end;
if s1="," then
delete(s,1,1);
if s>"" then
begin
if b1="1" then
begin
s3:=copy(s,1,1);
if s3>"" then
if strtoint(s3)>=5 then
a:=0+strtoint(s2)+1
else
a:=s2;
s1:="";
s2:=a;
end;
if b1="10" then
begin
s5:=s1;
s1:=copy(s,1,1);
if s1="" then
s1:="0";
delete(s,1,1);
s3:=copy(s,1,1);
if s3>"" then
begin
if strtoint(s3)>=5 then
begin
a:=0+strtoint(s1)+1;
s1:=a;
end;
if strtoint(s1)>=10 then
begin
delete(s1,1,1);
s2:=inttostr(strtoint(s2)+1);
end;
end;
end;
if b1="100" then
begin
s5:=s1;
s4:=copy(s,1,1);
if s4="" then
s4:="0";
delete(s,1,1);
s1:=copy(s,1,1);
if s1="" then
s1:="0";
delete(s,1,1);
s3:=copy(s,1,1);
if s3>"" then
begin
if strtoint(s3)>=5 then
begin
a:=0+strtoint(s1)+1;
s1:=a;
end;
if strtoint(s1)>=10 then
begin
delete(s1,1,1);
s4:=inttostr(strtoint(s4)+1);
end;
if strtoint(s4)>=10 then
begin
delete(s4,1,1);
s2:=inttostr(strtoint(s2)+1);
end;
end;
end;
if b1="1000" then
begin
s5:=s1;
s4:=copy(s,1,1);
if s4="" then
s4:="0";
delete(s,1,1);
s1:=copy(s,1,1);
if s1="" then
s1:="0";
delete(s,1,1);
s7:=copy(s,1,1);
if s7="" then
s7:="0";
delete(s,1,1);
s6:=copy(s,1,1);
if s6>"" Then
Begin
if StrToInt(s6)>=5 then
begin
a:=0+strtoint(s7)+1;
s7:=a;
End;
if strtoint(s7)>=10 then
begin
delete(s7,1,1);
s4:=inttostr(strtoint(s1)+1);
end;
if strtoint(s1)>=10 then
begin
delete(s1,1,1);
s4:=inttostr(strtoint(s4)+1);
end;
if strtoint(s4)>=10 then
begin
delete(s4,1,1);
s2:=inttostr(strtoint(s2)+1);
end;
end;
end;
end;
End;
a:=s2+s5+s4+s1+s7;
result:=a;
end;
//////////////////////////////////////////////////////////////////
Затем в процедуре:
var
TrK:String;
begin
....
GSM_KOMTr.Caption := Okrug(TrK,"10");
....
Долго, при больших объемах но зато точно.
Может кто-то подскажет лучше...


 
Anatoly Podgoretsky   (2002-06-15 13:59) [6]

(DBEdit1.Field as TNumericField).DisplayFormat = "0.00"



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.07.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
3-23501
Эльдар
2002-06-17 15:20
2002.07.08
Попадалово


1-23657
Jony
2002-06-25 15:22
2002.07.08
Как программно уничтожать программно созданные компоненты?


14-23747
esprit_bel
2002-06-06 10:00
2002.07.08
Зрение


6-23709
Doom
2002-04-29 14:49
2002.07.08
Переполнение буфера -- это что?


14-23775
evgeg
2002-06-08 18:00
2002.07.08
Программиские басни





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский