Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.06.2011, 19:35   #1
Trikster
Пользователь
 
Аватар для Trikster
 
Регистрация: 11.02.2011
Сообщений: 31
Вопрос Время в DBGrid

БД в аксесс, использую ADO.

как записать время в БД так, чтобы в DBGrid отображалось только время без даты 30.12.1899 ????
Trikster вне форума Ответить с цитированием
Старый 05.06.2011, 19:40   #2
Gulik
Холост/Не замужем
Форумчанин
 
Аватар для Gulik
 
Регистрация: 13.11.2007
Сообщений: 283
По умолчанию

Начни с того как ты это делаешь. И тебе укажут на ошибку
Gulik вне форума Ответить с цитированием
Старый 05.06.2011, 19:42   #3
Trikster
Пользователь
 
Аватар для Trikster
 
Регистрация: 11.02.2011
Сообщений: 31
По умолчанию

вот
Код:
var id:string;
    rez:string;
    PR:string;
    TM:TDateTime;
    myDate:TDateTime;
begin

  // ShowMessage(Main.Label2.Caption);
  TM:=strtotime('00:'+Main.Label2.Caption);
 // myDate:=strtoTime(Main.Label2.Caption);
  FormatDateTime('tt', TM);
  ShowMessage(FormatDateTime('tt', TM));
  Label7.Caption:=inttostr(Main.kol_true);
  With Form3 do
    begin
      id:=inttostr(Form3.id_stud);
      rez:=inttostr(Main.kol_true);
      try
       ADOQuery1.Close;
       ADOQuery1.SQL.Clear;
       ADOQuery1.SQL.Text:='Update Студенты SET Результат=:b,[Время за тест]=:d WHERE id_stud=:a';
       ADOQuery1.Parameters.ParseSQL(ADOQuery1.SQL.Text, true);
       ADOQuery1.Parameters.ParamByName('a').Value:=id;
       ADOQuery1.Parameters.ParamByName('b').Value:=rez;
       ADOQuery1.Parameters.ParamByName('d').Value:=TM;
       ADOQuery1.ExecSQL;
      except on e:Exception do
     end;
   end;
В access все нормально отображается, а вот в DBGRid нет
Trikster вне форума Ответить с цитированием
Старый 05.06.2011, 21:56   #4
_Engine_
Форумчанин
 
Регистрация: 29.06.2008
Сообщений: 603
По умолчанию

настрой у поля displayformat
_Engine_ вне форума Ответить с цитированием
Старый 05.06.2011, 21:58   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

или у DBGrid используй OnDrawDataCel
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 06.06.2011, 10:27   #6
Trikster
Пользователь
 
Аватар для Trikster
 
Регистрация: 11.02.2011
Сообщений: 31
По умолчанию

Цитата:
или у DBGrid используй OnDrawDataCel
а можно поподробнее? Все что я пока нашел про OnDrawDataCell, это как раскрасить строку(
Trikster вне форума Ответить с цитированием
Старый 06.06.2011, 11:43   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

только не OnDrawDataCel, а OnDrawColumnCel
Код:
if Column.Field=... then begin
  s:=форматируем нужный вид времени
  DBGrid1.Canvas.TextRect(Rect,Rect.Left+1,Rect.Top,s);
end;
а что мешает field-у DisplayFormat задать? Это проще будет
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 06.06.2011 в 11:47.
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
текущее время (системное время ) Sirk0 Общие вопросы Delphi 27 07.03.2015 17:52
Время + dbgrid подкрашивание строки Kuraj БД в Delphi 3 01.04.2010 10:00
Время нажатия на кнопку мыши(Время реакции) Кирилл13 Помощь студентам 1 11.04.2009 19:41
Как сделать чтобы во время поиска по таблице не было видно перемещения по dbgrid? alxsev БД в Delphi 4 10.04.2009 19:03
Время в DBGrid Bor_Gus БД в Delphi 4 03.04.2008 02:21