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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.01.2007, 11:01   #1
sid
Пользователь
 
Регистрация: 15.12.2006
Сообщений: 17
По умолчанию Не могу сделать цифровые часы

Решил сделать цифровые часы. Нашел в Demos заготовку в виде секундомера в папке Clx\StopWatch. Интересно, что этого эл-та в палитре нет, но он появляется, когда создаешь CLX Application. Кстати, скажите в чем разница между CLX и просто Application? Так вот, поместил этот эл-т на форму, цифорки там будут такие, которые укажешь в Value. Но в этом и проблема, я создал переменную с названием допустим S и в коде пишу Value:= ('S'), а он так и делает, вместо того, чтобы поместить туда переменную, он выводит S. Подскажите пожалуйста, как сделать, чтобы он подставлял переменную?
sid вне форума Ответить с цитированием
Старый 17.01.2007, 12:20   #2
zetrix
Delphi/C++/C#
Участник клуба
 
Аватар для zetrix
 
Регистрация: 29.10.2006
Сообщений: 1,972
По умолчанию

Может кавычки убрать?
zetrix вне форума Ответить с цитированием
Старый 17.01.2007, 12:24   #3
Umen
Форумчанин
 
Аватар для Umen
 
Регистрация: 10.11.2006
Сообщений: 189
По умолчанию

Какого типа переменная S?
Если целого, то попробуй

Код:
Value := IntToStr(S)
CLX, насколько я знаю это кроссплатформенное приложение (используются другие, кроссплатформенные версии основных модулей программы)

//В догонку
//Скорее всего Value это переменная целого типа поэтому правильнее
//или так
//
Код:
Value := S
//
//или так, если S - строкового типа
Код:
Value := StrToInt(S)

Последний раз редактировалось Umen; 17.01.2007 в 13:01.
Umen вне форума Ответить с цитированием
Старый 17.01.2007, 13:14   #4
sid
Пользователь
 
Регистрация: 15.12.2006
Сообщений: 17
По умолчанию

Спасибо, сейчас буду пробовать. А как вобще делать часы в Delphi? Я имею ввиду, как брать системное время, а уже полученное значение выводить допустим в Label ? Я пробовал
var
t: SystemTime;
........
GetSystemTime(t);
Caption:= t;
А компилятор говорит, что он не знает, что такое t:SystemTime;
sid вне форума Ответить с цитированием
Старый 17.01.2007, 13:43   #5
Prowler
Форумчанин
 
Регистрация: 30.11.2006
Сообщений: 128
По умолчанию

Гы! Есно не знает, нечего не существующие типы писать. Посмотри справку по типу tdatetime - тама всё написано.
nosce te ipsumj...
Prowler вне форума Ответить с цитированием
Старый 17.01.2007, 13:53   #6
sid
Пользователь
 
Регистрация: 15.12.2006
Сообщений: 17
По умолчанию

Я только начинающий, можно немножко снисхождения? А давайте добавим новую тему "Delphi для самых маленьких" и приглосим туда модераторов с огромным терпением к таким, как я???

Я сейчас сделал таймер, с выводом в label при помощи inc(x). Но вот проблемка: хочется, чтобы время выводилось не 0,1,2... , а 01,02,03...
Сделал '0'+IntToStr(x), но при значении X>9 естественно получается 010. Как это можно обойти?

По поводу ТDateTime, можно поподробнее, мне сейчас справка Delphi мало о чем говорит, Вы напишите, что мне нужно исправить, а я посмотрю Ваш пример, справку Delphi и все пойму.
sid вне форума Ответить с цитированием
Старый 17.01.2007, 14:05   #7
Albenous
Helper
Форумчанин
 
Аватар для Albenous
 
Регистрация: 10.12.2006
Сообщений: 109
Радость

Цитата:
Сообщение от sid Посмотреть сообщение
Я только начинающий, можно немножко снисхождения? А давайте добавим новую тему "Delphi для самых маленьких" и приглосим туда модераторов с огромным терпением к таким, как я???
Котегорически поддерживаю это предложение!!!!!!!!!

Цитата:
хочется, чтобы время выводилось не 0,1,2... , а 01,02,03...
попробуй поработать с форматом вывода. Щас и я заодно попробую.

Цитата:
мне сейчас справка Delphi мало о чем говорит
не беда. потом будет говорить гораздо больше.
Скачай русскую справку делфи где-нибудь в нете. К сожалению, посоветовать справку с programmersclub не могу. Там многого нет. но если хочешь, можешь и ее скачать.
Глупых вопросов не бывает - бывают глупые ответы.
Albenous вне форума Ответить с цитированием
Старый 17.01.2007, 14:16   #8
AVer
Андрей
Форумчанин
 
Аватар для AVer
 
Регистрация: 21.11.2006
Сообщений: 457
По умолчанию

Ставишь на таймер с интервалом в 1 секунду:

Label1.Caption:=FormatDateTime('HH: MM:SS',now);
ICQ: 5311314
[SIGPIC][/SIGPIC]
AVer вне форума Ответить с цитированием
Старый 17.01.2007, 14:25   #9
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
Сообщение

Цитата:
Сообщение от sid Посмотреть сообщение
Но вот проблемка: хочется, чтобы время выводилось не 0,1,2... , а 01,02,03...
Сделал '0'+IntToStr(x), но при значении X>9 естественно получается 010. Как это можно обойти?
Код:
if x<10 then s:= '0'+IntToStr(x)
        else  s:= IntToStr(x);
в общем случае (для формирования строк)
рекомендую использовать ф-ию Format.
Пр-р:
Format( '%2d' , [x]);
Берегите друг друга!

Последний раз редактировалось zetrix; 17.01.2007 в 15:22.
Virtson вне форума Ответить с цитированием
Старый 17.01.2007, 14:42   #10
sid
Пользователь
 
Регистрация: 15.12.2006
Сообщений: 17
По умолчанию

if x<10 then s:= '0'+IntToStr(x)
else s:= IntToStr(x);
Как я сразу не догадался? А про Format я вобще не знаю ничего, надо будет посмотреть потом.
Проблема в том, что я решил использовать для часов не label, а LCDNumber, мне там циферки нравятся, правда я там не нашел, как менять цвет цифер... Так вот в LCDNumber запись типа '0'+IntToStr(x), не прокатит, 0 он не отображает, а все остальное показывает.
sid вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу сделать очистку строк в таблице sergey113 Помощь студентам 28 14.09.2008 19:38
Не могу сделать выборку с нужными полями, помогите чайнику! kadet.rus Microsoft Office Access 2 26.04.2008 14:12
электронные часы Багира Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 19.12.2007 23:09
Ускоренные часы Иринкаа Компоненты Delphi 2 23.11.2007 12:58
Цифровые часы без фона Roof Помощь студентам 13 22.07.2007 12:18