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

Вниз

Дата в строку   Найти похожие ветки 

 
star77   (2002-07-04 20:26) [0]

Уважаемые Мастера!
Помогите пользователю с написанием
функции для преобразования номера месяца в
строку . В виде процедуры написать умудрился,
но на большее не хватает знаний. Добавьте
нужное и уберите лишнее. Заранее благодарен.
Вот текст:

procedure Tfm_main.FormCreate(Sender: TObject);
const
arr_mesyaz: array[1..12] of string[10]=(
"января","февраля",
"марта","апреля,"мая",
"июня","июля","августа",
"сентября","октября","ноября",
"декабря");
var dat:string[8];
day:string[2];
month:string[2];
year:string[2];
month_txt:string[10];// месяц прописью
x:integer;
begin
dat:=DateToStr(Date);
day:=copy(dat,1,2);
month:=copy(dat,4,2);
year:=copy(dat,7,2);
if (pos("0",month)=1) then delete (month,1,1);
x:=StrToInt(month);
month_txt:=arr_mesyaz[x];
StatusBar1.SimpleText:=" Сегодня: "+day+" "+month_txt+" 20"+year+" года";
end;


 
Viewer   (2002-07-04 20:51) [1]

function Doit(dt: TDateTime): string
var
arrM: array[1..12] of string (.....);
y, m, day: Word;
begin
DecodeDate(dt, y, m, day);
Result := Format("Сегодня %d %s %d года",[day, arrM[m], y]);
end;


 
yozhik   (2002-07-04 21:01) [2]

по моему так лучше :)
procedure Tfm_main.FormCreate(Sender: TObject);
const
begin
StatusBar1.SimpleText:=" Сегодня: "+FormatDateTime("d (dddd) mmmm yyyy", Date)+" года";
end;

но если тебе надо с сохранением падежей тогда так:
procedure Tfm_main.FormCreate(Sender: TObject);
const
arr_mesyaz: array[1..12] of string[10]=(
"января","февраля",
"марта","апреля,"мая",
"июня","июля","августа",
"сентября","октября","ноября",
"декабря");
var day, month, year: word;
begin
DecodeDate(Date, year, month, day)
StatusBar1.SimpleText:=" Сегодня: "+IntToStr(day)+" "+arr_mesyaz[month]+" "+IntToStr
(year)+" года";
end;




 
DeMoN-777   (2002-07-04 21:11) [3]

В UBFD посмотри в соответвующем разделе.


 
Viewer   (2002-07-04 21:18) [4]

Да.. Очень большие отличия ;))
Кроме того, как минимум, в два раза медленнее.


 
kull   (2002-07-05 01:24) [5]


> Кроме того, как минимум, в два раза медленнее.

Минздрав предупреждает:
Не занимайтесь преждевременной оптимизацией - вредно для здоровья проекта.


 
Viewer   (2002-07-05 10:47) [6]

То-то мы наблюдаем, что для решения тех же задач, что решались раньше на XT, сейчас уже и пней 4-х не хватает ;))


 
FOX   (2002-07-05 15:19) [7]

выводит дату с учетом падежа.
function FormatLanguageDate(aDate : TDateTime) : string;
var SysTime : Tsystemtime; Buffer: array[0..1023] of Char;
Year, Month, Day: Word;
begin
DecodeDate(aDate, Year, Month, Day);
SysTime.wYear := Year;
SysTime.wMonth := Month;
SysTime.wDay := Day;
SetString(Result, Buffer, GetDateFormat(LOCALE_SYSTEM_DEFAULT,
DATE_LONGDATE, @SysTime, nil, Buffer, SizeOf(Buffer))-1);
end;


 
Виктор Щербаков   (2002-07-05 16:07) [8]

Viewer (05.07.02 10:47)
Зато сколько рюшечек в интерфейс понавешали, особенно в XP :)



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

Форум: "Основная";
Текущий архив: 2002.07.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.006 c
3-57978
Weare
2002-06-26 11:48
2002.07.18
Проблемы с доступом...


14-58285
DeMoN-777
2002-06-21 16:54
2002.07.18
Как проще ?


1-58047
nitro313
2002-07-08 03:21
2002.07.18
Мастаки помогите! Не могу сам дойти...


8-58234
Ежик
2002-03-13 09:50
2002.07.18
Такая проблема.... Нужно запихать рисунок JPG на рабочий стол.....


7-58339
Reket
2002-04-22 11:14
2002.07.18
Как перехватить поток данных идущих через LPT порт?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский