Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/14: Рейтинг темы: голосов - 14, средняя оценка - 4.86
6 / 6 / 1
Регистрация: 29.09.2009
Сообщений: 91

Часы, раставить нули

18.10.2009, 11:54. Показов 2610. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как в обычных электронных часах перед мин или сек ставятся нули, вот и мне нужно программно поставить нули перед числами никак не могу понять что неправильно при выводе когда число меньше десяти должен ставиться ноль и он ставится но только на первой секунде а на второй выводится число 2 без нуля перед ним. Помогите пожл, уже запарился. И прошу заметить что это нужно реализовать без hh только с одними h, n, s.

C++
1
2
3
4
5
6
7
8
9
10
11
12
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
 AnsiString hh = FormatDateTime("h",df.CurrentDateTime());
 AnsiString mm = FormatDateTime("n",df.CurrentDateTime());
 AnsiString ss = FormatDateTime("s",df.CurrentDateTime());
 Label1->Caption = (hh);
 if (mm < 10) Label3->Caption = "0" + (mm);
  else Label3->Caption = (mm);
 if (ss < 10) Label7->Caption = "0" + (ss);
  else Label7->Caption = (ss);
 
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.10.2009, 11:54
Ответы с готовыми решениями:

Раставить значения по ячейкам
Привет !!! Есть такая таблица Расставить значения по ячейкам в зависимости от того если такое слово в соседнем столбце , слов может...

Помогите правильно раставить связи
Помогите правильно раставить связи в этой базе данных.

php+html синтаксис.раставить кавычки и слеши.
Где то не хватает спец.знаков..ссылка отображается неверно.

5
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
18.10.2009, 19:29
C
1
2
3
4
int n;
char buf[10];
 
sprintf( buf, "%02d", n );
1
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
19.10.2009, 10:47
Rumus, конвертируйте минуты и секунды в int, иначе вы сравниваете две строки, а 2 больше 10 (с точки зрения строк между прочим)... StrToInt вам в помощь...
1
14 / 14 / 1
Регистрация: 18.09.2009
Сообщений: 45
19.10.2009, 15:57
а чем вам мой вариант не понравился? этот
1
 Аватар для NemiroFFyo
70 / 70 / 3
Регистрация: 29.09.2009
Сообщений: 530
19.10.2009, 21:07
Держи... обработчик выводит грамотно время с мигающим двоеточием...

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void __fastcall TForm1::Timer2Timer(TObject *Sender)
{
 
 int cHour, cMinute;     // время на индикаторе
 
 cHour = HourOf( Now() );
 Label1->Caption = IntToStr(cHour);
 cMinute = MinuteOf( Now() );
 Label3->Caption = min(cMinute);
 Label2->Visible = ! Label2->Visible;
 Form1->Refresh();
 
}
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
20.10.2009, 10:54
у меня немножко переделанный код

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
 
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
int min,sec;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
    if ( sec < 59 )
    { sec++;
        if ( sec < 10)
            {Label2->Caption = ":0" + IntToStr(sec);}
        else
            {Label2->Caption =":" + IntToStr(sec);}
    }
    else if (sec == 59)
         {Label2->Caption = ":00";
          sec = 0;
          min++;}
           if (min < 10)
              {Label1->Caption = "0" + IntToStr(min);}
           else
              {Label1->Caption = IntToStr(min);}
           if (Label1->Caption == "59")
                  {Timer1->Enabled=false;}
 
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
        if(Timer1->Enabled == true)
           {Timer1->Enabled=false;}
         else if (Timer1->Enabled==false)
            {Timer1->Enabled=true;}
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.10.2009, 10:54
Помогаю со студенческими работами здесь

как правильно раставить кнопки в Table Row?
привет всем. Вот решил написать первую игру на андроид и столкнулся с проблемой. Вообще есть 4 кнопки, на них меняется текст, и когда текст...

C# как правильно раставить галочки при html parsing
Проблема в том что не знаю как поставить галочки правильно. Вот например как бы вы поставили галочки правильно: string pattern =...

Флеш часы: часы, показывающие указанное время
Привет всем!!!Помогите пожалуйста!!!Как создать флеш часы чтобы они показывали разное указанное время. Весь инет прошарил нигде нет! в...

Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) когда совпадут минуты и часы
Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) до того момента когда часовая и минутная стелка...

Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) когда совпадут минуты и часы
Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) до того момента когда часовая и минутная стелка...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru