![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Пользователь
Регистрация: 12.03.2010
Сообщений: 35
|
![]()
Проверти пожалуйста в чем моя ошибка, время работает отлично но день недели почему то не переключается по истечению суток
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Label1: TLabel; Timer1: TTimer; Button1: TButton; Label2: TLabel; procedure Button1Click(Sender: TObject); procedure tmr1Timer(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; MSec : Integer; implementation const stDay : array[1..7] of string[11] = ('Вс','Пн','Вт','Ср','Чт','Пт','Сб' ); {$R *.dfm} function MSecToTime(mSec: Int64): string; var dt : TDateTime; begin dt := mSec / MSecsPerSec / SecsPerDay; Result := Format('%s', [FormatDateTime('hh:nn:ss', Frac(dt))]) ; end; // выход из программы procedure TForm1.Button1Click(Sender: TObject); begin Close; end; //включение часов procedure TForm1.tmr1Timer(Sender: TObject); begin MSec := MSec + 1000000000; // можно менять время Label1.Caption := MSecToTime(MSec); end; procedure TForm1.FormCreate(Sender: TObject); var Present: TDateTime; Day : Word; begin Present:= Now; Label2.Caption := stDay[DayOfWeek(Present)]; end; end. При компеляции ошибки не какай не выскакивает.
Я в этом деле новичок
Последний раз редактировалось aleksandr278; 14.03.2010 в 23:37. |
![]() |
![]() |
![]() |
#12 | |
Programming...
Форумчанин
Регистрация: 13.03.2010
Сообщений: 198
|
![]() Цитата:
Код:
yy = Год из 2-х последних цифр yyyy = Год из 4-х цифр m = Номер месяца без 0 mm = Номер месяца как 2 цифры mmm = Месяц используя ShortDayNames (Янв) mmmm = Месяц используя LongDayNames (Январь) d = Число без 0 dd = Число как 2 цифры ddd = Число используя ShortDayNames (Воск) dddd = Число используя LongDayNames (Воскресенье) ddddd = Число в ShortDateFormat dddddd = Число в LongDateFormat c = Используя ShortDateFormat + LongTimeFormat h = Час без 0 hh = Час как 2 цифры n = Минуты без 0 nn = Минуты как 2 цифры s = Секунды без 0 ss = Секунды как 2 цифры z = Миллисекунды без 0 zzz = Миллисекунды как 2 цифры t = Используя ShortTimeFormat tt = Используя LongTimeFormat am/pm = Используется после h : выдаёт 12 часов + am/pm a/p = Используется после h : выдаёт 12 часов + a/p ampm = Как a/p но TimeAMString,TimePMString / = Заменяется значением DateSeparator : = Заменяется значением TimeSeparator В дополнение к этому форматированию, различные из вышеупомянутых вариантов затрагиваются следующими переменными, с их значением по значением по умолчанию: DateSeparator = / TimeSeparator = : ShortDateFormat = dd/mm/yyyy LongDateFormat = dd mmm yyyy TimeAMString = AM TimePMString = PM LongTimeFormat = hh:mm:ss ShortMonthNames = Янв Фев ... LongMonthNames = Январь, Февраль ... ShortDayNames = Воск, Пон ... LongDayNames = Воскресенье, Понедельник ... TwoDigitYearCenturyWindow = 50 Код:
|
|
![]() |
![]() |
![]() |
#13 |
Пользователь
Регистрация: 12.03.2010
Сообщений: 35
|
![]()
Помогите пожалуйста.
Почему у меня в компоненте Label1 не выводится время. В Label2 дата показывается нормально. Где моя ошибка??? unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls; type TForm1 = class(TForm) Image1: TImage; Image2: TImage; Label1: TLabel; Label2: TLabel; Timer1: TTimer; procedure FormCreate(Sender: TObject); procedure ShowTime; procedure Timer1Timer(Sender: TObject); procedure FormPaint(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} const stDay : array[1..7] of string[11] = ('Воскресенье','Понедельник','Вторн ик','Среда','Четверг','Пятница','Су ббота'); stMonth : array[1..12] of string[8] = ('Января','Февраля','Марта','Апреля ','Мая','Июня','Июля', 'Августа','Сентября','Октября','Ноя бря','Декабря'); procedure TForm1.FormCreate(Sender: TObject); var Present: TDateTime; Year, Month, Day : Word; begin Image1.Picture.LoadFromFile('Images \foni\fonbazi.bmp'); Image2.Picture.LoadFromFile('Images \foni\baza.bmp'); Present:=Now; DecodeDate(Present, Year, Month, Day); Label2.Caption := 'Сегодня '+IntToStr(Day)+ ' ' + stMonth[Month] +' '+IntToStr(Year)+' года, '+ stDay[DayOfWeek(Present)]; Timer1.Interval :=1000; Timer1.Enabled :=True; end; procedure TForm1.ShowTime; var Time: TDateTime; begin Time := Now(); Label1.Caption := FormatDateTime('hh:mm:ss',Time); end; procedure TForm1.Timer1Timer(Sender: TObject); begin ShowTime; end; procedure TForm1.FormPaint(Sender: TObject); begin ShowTime; end; end.
Я в этом деле новичок
|
![]() |
![]() |
![]() |
#14 |
Пользователь
Регистрация: 12.03.2010
Сообщений: 35
|
![]()
Ошибку свою на шел.
Процедуру procedure Timer1Timer(Sender: TObject); прописал, а оказывается надо было всего лишь щелкнуть по компоненту Time два раза.
Я в этом деле новичок
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
InjHdc – программа выводящая время в окне игры. | mikityak | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 3 | 09.04.2013 00:26 |
цель игры - управляя корабликом стрелками, пройти дистанцию за наименьшее время. | Lazzy | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 7 | 18.12.2007 23:51 |
Для любителей сфоткать лучшие моменты во время игры | Shurik Hacker | Софт | 1 | 08.11.2007 20:51 |