TDBDateTimeEditEh в формате "01 декабря 2007"

user.C
Дата: 09.12.2007 23:07:14
Возможно ли в TDBDateTimeEditEh сделать формат "01 декабря 2007"?
user.C
Дата: 11.12.2007 10:29:19
Up
andreymx
Дата: 11.12.2007 10:52:33
EHLIB.HLP - EhLib v3.2 - TDBDateTimeEditEh
Description
.....
TDBDateTimeEditEh build edit mask using ShortDateFormat variable. Edit mask can be by six types: three for four-char year - 'MM/DD/YYYY', 'DD/MM/YYYY', 'YYYY/MM/DD' and three for two-char year 'MM/DD/YY', 'DD/MM/YY', 'YY/MM/DD'.
user.C
Дата: 11.12.2007 11:39:55
Это я читал. Просто не верится, что пропущен формат, что мне нужен. Например, в DataTimePicker он присутствует, несколько иначе - свойство DateFormat (dfLong,dfShort).
Саппорт разработчиков не отвечает, хоть у меня и официальная версия.
Альт
Дата: 11.12.2007 13:05:36
поделие большакова вызывает у меня только негативные ассоциации...
Давайте разбираться по-порядку... вот код... которым он получает кол-во цифр для отображения года:
  AFourDigitYear := (Pos('YYYY', NlsUpperCase(ShortDateFormat)) > 0)...
дальше хуже...
type TDateOrder = (doMDY, doDMY, doYMD);

const
  DefaultDateOrder = doDMY;

function GetDateOrder(const DateFormat: string): TDateOrder;
var
  I: Integer;
begin
  Result := DefaultDateOrder;
  I := 1;
  while I <= Length(DateFormat) do
  begin
    case Chr(Ord(DateFormat[I]) and $DF) of
{$IFDEF RX_D3}
      'E': Result := doYMD;
{$ENDIF}
      'Y': Result := doYMD;
      'M': Result := doMDY;
      'D': Result := doDMY;
    else
      Inc(I);
      Continue;
    end;
    Exit;
  end;
  Result := DefaultDateOrder; { default }
end;

function DefDateFormat(FourDigitYear: Boolean): string;
begin
  if FourDigitYear then
  begin
    case GetDateOrder(ShortDateFormat) of
      doMDY: Result := 'MM/DD/YYYY';
      doDMY: Result := 'DD/MM/YYYY';
      doYMD: Result := 'YYYY/MM/DD';
    end;
  end else
  begin
    case GetDateOrder(ShortDateFormat) of
      doMDY: Result := 'MM/DD/YY';
      doDMY: Result := 'DD/MM/YY';
      doYMD: Result := 'YY/MM/DD';
    end;
  end;
end;
т.е. он ничего не знает о LongDateFormat
Все бы ничего и можно бы было расширить Kind новой dtkDateLongEh, но желание что-то дописывать пропадает после просмотра EditFormatToEditMask
andreymx
Дата: 11.12.2007 13:25:17
кстати, довольно много непонятных и трудноотлавливаемых АВшников именно при использовании EhLib (у нас 3.2 до сих пор)
user.C
Дата: 11.12.2007 23:49:41
У меня версия 4.2. Больших проблем нет, более того, успешно решил свои задачи, на которые штатные компоненты не способны. Самому писать некогда, делаю это в исключительных случаях.
Отсутствие данного свойства вызывает просто очевидную досаду.
Равно как и молчание саппорта.