Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.13;
Скачать: CL | DM;

Вниз

Как можно изменить св-во DisplayFormat поля TDateTime .....   Найти похожие ветки 

 
Eduard   (2002-12-17 15:03) [0]

Создаю TADOQuery в другой ветви таким образом:

type
TThreadQuery = class(TThread)
private
AdoDB:TADOConnection;
AdoQ:TADOQuery;
ds: TDataSource;
protected
procedure DoWork;
procedure Execute; override;
public
constructor Create(const aSQL: TStrings; aAdoDB:TADOConnection; aDS: TDataSource);
destructor Destroy;override;
end;
implementation

uses ufMain;

constructor TThreadQuery.Create(const aSQL: TStrings; aAdoDB:TADOConnection; aDS: TDataSource);
begin
inherited Create(True);
FreeOnTerminate := True;
AdoQ:=TADOQuery.Create(nil);
AdoDB:= aAdoDB;
DS := aDS;
AdoQ.Connection:= AdoDB;
AdoQ.SQL:=aSQL;
Resume;
end;

destructor TThreadQuery.Destroy;
begin

if Assigned(AdoQ) then
begin
AdoQ.Close;
AdoQ.Free;
AdoQ := nil;
end;
inherited;
end;

procedure TThreadQuery.DoWork;
begin

DS.DataSet := AdoQ;

end;

procedure TThreadQuery.Execute;
begin

AdoQ.Open;
synchronize(DoWork);
Suspend;

end;
end.

Необходимо что бы поле в открывшейся таблице типа TDateTime имело формат представления "hh:nn:ss". В DBGrid св-ва DisplayFormat не нашёл :)) Заранее спасиб за ответы ..


 
Prooksius ©   (2002-12-17 15:06) [1]

Так DisplayFormat - свойство поля (TField).


 
Diouzshev   (2002-12-17 15:19) [2]

Выставить DisplayFormat в DesignTime и читать статью
http://www.delphicorner.f9.co.uk/articles/db1.htm
Если не подходит то см что написал Prooksius © (17.12.02 15:06)


 
Eduard   (2002-12-17 15:43) [3]

for Prooksius © :))
TField properties:
***
CustomConstraint
DataSet
DataSize
DataType
DefaultExpression
DesignInfo
DisplayLabel
DisplayName
DisplayText
DisplayWidth
EditMask
***
сортировка по алфавиту DisplayFormat-?



 
Prooksius ©   (2002-12-17 15:51) [4]

Ну да, свойство не самого TField, а его наследников, причем не всех.
Набери в Дельфи TDateTimeField и нажми F1.


 
Eduard   (2002-12-17 16:08) [5]

Prooksius ©

вот тут то я и не вкуряю....
есть query открытое, есть Поле "MyField" или Fields[0]типа TDateTimeField (строка AdoQ.Fields.FindField("MyField") после AdoQ.Open; {см выше} даёт <> nil)
не могли бы написать что должно быть вместо ***
***.DisplayFormat:="hh:nn:ss";


 
Johnmen ©   (2002-12-17 16:15) [6]

Для адошных типов полей нет DisplayFormat.
М.б. подойдет просто на все приложение ShortDateFormat:="hh:mm:ss"


 
Anatoly Podgoretsky ©   (2002-12-17 16:18) [7]

Любое из этих, только сделать приведение (... as TDateTimeField).DisplayFormat:="hh:nn:ss";


 
Prooksius ©   (2002-12-17 16:20) [8]

Если я не ошибаюсь, Query.FieldByName("...").DisplayFormat := ...


 
Anatoly Podgoretsky ©   (2002-12-17 16:21) [9]

Johnmen © (17.12.02 16:15)
Вообще то в списке наследованных свойств есть свойство Fields


 
Eduard   (2002-12-17 16:32) [10]

Anatoly Podgoretsky
AdoQ.Fields.Fields[2].AsDateTime.DisplayFormat:="hh:nn:ss";
ошибка
[Error] uThQ.pas(113): Record, object or class type required
(... as TDateTimeField) нет таковых..
похоже надо создавать обьект TDateTimeField и туда запихивать
данные формата AsDateTime

... Всем ещё раз спасибо .. Буду завтра :))


 
Eduard   (2002-12-17 16:36) [11]

Prooksius ©
Query.FieldByName("..."):TField
а DisplayFormat
:))
Prooksius © (17.12.02 15:51)
Ну да, свойство не самого TField, а его наследников, причем не всех.
Набери в Дельфи TDateTimeField и нажми F1.



 
Anatoly Podgoretsky ©   (2002-12-17 16:41) [12]

У мне разве так написано, еще раз повторяю с выделением
(... as TDateTimeField ).DisplayFormat:="hh:nn:ss";


 
Johnmen ©   (2002-12-17 17:27) [13]

>Anatoly Podgoretsky © (17.12.02 16:41)

Да, похоже...
Только вот никак не пойму, что такое nn в "hh:nn:ss" ? Наносекунды ?
:))))))))))))))))))))))))



 
Prooksius ©   (2002-12-17 17:32) [14]

nn - минуты так сделали, чтобы не спутать с месяцами.


 
FreeLancer ©   (2002-12-17 17:38) [15]

Поверить не могу, второй раз за полчаса:

Johnmen ©
> Только вот никак не пойму, что такое nn в "hh:nn:ss" ?
Наносекунды


nn Displays the minute with a leading zero (00-59).


 
Johnmen ©   (2002-12-17 17:49) [16]

>FreeLancer © (17.12.02 17:38)

Чему не можешь поверить ? Что я уже в этот хелп не заглядывал несколько лет ? Поверь !!! Это так !!!
Нужды то не было :), хватало hh:mm.....
Ж:-))))))))))


 
Prooksius ©   (2002-12-17 19:51) [17]

2 FreeLancer © (17.12.02 17:38)
А говорил, что не злопамятный... ;-))))))


 
Anatoly Podgoretsky ©   (2002-12-17 20:10) [18]

Johnmen © (17.12.02 17:27)
Видимо они мыслили так mi Nutes, ох сколько народу на этих mm и nn нажглось :-)



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

Текущий архив: 2003.01.13;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.015 c
14-37365
Kesha
2002-12-24 14:03
2003.01.13
работа с Exsel


1-37101
mao
2003-01-03 15:57
2003.01.13
БД. DBMemo1.DataSource???


4-37473
Unknown user
2002-11-26 23:42
2003.01.13
Как выполнить точное масштабирование текста?


6-37235
Mischka
2002-10-31 10:35
2003.01.13
подключение по локалке


3-36923
ффф
2002-12-17 17:29
2003.01.13
Запрос