Требуется Помощь Очень Срочно! Программа "часы"

Тема в разделе "Delphi - FAQ", создана пользователем Juli13rus, 19 окт 2012.

Статус темы:
Закрыта.
  1. Juli13rus

    Juli13rus Гость

    Прошу заранее прощения за непрофессионализм в этом деле. Учусь заочно, знаний в этой области практически или вообще нет.
    К делу.. Есть код программы "часы" с будильником (напоминалкой). Была создана одна форма. Все как бы ничего.., ошибок вроде нет. Но! В коде указана форма два, про которую в описани работы не слова. Полагаю, что это должно быть то самое сообщение, которое будет появляться после срабатывания будильника (сигнала). (форма2)
    Подскажите пожалуйста, как правильно добавить еще одну форму, в которой будет картинка/фон (которую тоже нужно помочь сделать), небольшой текст сообщения, музыка, и что бы это все вместе работало.
    Так же хочется очень, что бы при загрузке предоставлялась возможность выбрать вид часов (аналоговые или цифровые), код я найду. Получается, что это уже 3-я форма. А для нее нужна еще одна для сообщения будильника или можно использовать форму 2?
    И, если можно, при загрузке программы хочется, чтобы появлялась полосочка "загружающаяся" (если вы поняли, о чем я).Так поняла, что это чисто только для вида.. и не несет никакой функциональности. Это не обязательно, но это моя курсовая работа и просто часы безо всего - это очень легкая программа. Хорошей оценки мне за нее не ждать. Нужно чем-то усложнить.
    Используемая программа: Delphi 7.
    Имеющийся код:
    unit Unit1;

    interface

    uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, ComCtrls, ExtCtrls, StdCtrls, DateUtils;

    type
    TForm1 = class(TForm)
    Button1: TButton;
    Edit1: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Timer1: TTimer;
    Shape1: TShape;
    Shape2: TShape;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    UpDown1: TUpDown;
    UpDown2: TUpDown;

    procedure Shape1ContextPopup(Sender: TObject; MousePos: TPoint;
    var Handled: Boolean);
    procedure FormCreate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure UpDown1Click(Sender: TObject; Button: TUDBtnType);
    procedure UpDown2Click(Sender: TObject; Button: TUDBtnType);
    procedure Button1Click(Sender: TObject);

    private
    { Private declarations }
    public
    { Public declarations }
    end;

    var
    Form1: TForm1;

    implementation

    {$R *.dfm}
    var
    Hour,Min: word; // время на индикаторе
    AlHour, AlMin: word; // будильник установлен на AlHour:AlMin

    procedure TForm1.Shape1ContextPopup(Sender: TObject; MousePos: TPoint;
    var Handled: Boolean);


    begin

    end;
    // начало работы программы
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    Hour := HourOf(Now);
    Min := MinuteOf(Now);
    Label1.Caption := IntToStr(Hour);
    if Min < 10
    then Label2.Caption := '0'+IntToStr(Min)
    else Label2.Caption := IntToStr(Min);
    end;

    // сигнал от таймера
    procedure TForm1.Timer1Timer(Sender: TObject);
    var
    cHour,cMin: word;
    begin
    // получить текущее время
    cHour := HourOf(Now);
    cMin := MinuteOf(Now);

    if Timer1.Tag = 0 // окно программы на экране
    then begin
    { проверим, совпадает ли текущее время
    с отображаемым на индикаторе }
    if cHour <> Hour then
    begin
    Hour := cHour;
    Label1.Caption := IntToStr(Hour);
    end;

    if cMin <> Min then
    begin
    Min := cMin;
    if min <10
    then Label2.Caption := '0' + IntToStr(Min)
    else Label2.Caption := IntToStr(Min);
    end;

    // обеспечим мигание двоеточия
    if Label3.Visible
    then Label3.Visible := False
    else label3.Visible := True;
    end

    else // окно программы скрыто, контролируем
    // наступление момента подачи сигнала
    if (cHour = AlHour) and (cMin = AlMin)
    // сигнал !
    then begin
    Form2.Show;
    Timer1.Tag := 0;
    Timer1.Interval := 1000;
    end;
    end;
    // щелчок на UpDown1 изменяет
    // время сигнала будильника - часы
    procedure TForm1.UpDown1Click(Sender: TObject; Button: TUDBtnType);
    begin
    if UpDown1.Position < 10
    then Label4.Caption := '0' + IntToStr(UpDown1.Position)
    else Label4.Caption := IntToStr(UpDown1.Position);
    end;
    // щелчок на UpDown2 изменяет
    // время сигнала будильника - минуты

    procedure TForm1.UpDown2Click(Sender: TObject; Button: TUDBtnType);
    begin
    if UpDown2.Position < 10
    then Label5.Caption := '0' + IntToStr(UpDown2.Position)
    else Label5.Caption := IntToStr(UpDown2.Position);
    end;
    // щелчок на кнопке OK
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    // установить будильник
    AlHour := UpDown1.Position;
    AlMin := UpDown2.Position;
    Timer1.Tag := 1;
    Form1.Hide; //
    Timer1.Interval := 3000; // проверять каждые 3 секунды

    end;

    end.
    вот как это выглядит.. строго не судите)))
    [​IMG]
     
  2. nayke

    nayke Well-Known Member

    Регистрация:
    4 авг 2010
    Сообщения:
    310
    Симпатии:
    0
    Судя по всему делали не вы.. почему не обратитесь к тому кто делал.

    Если проект компилируется, то форма 2 в файлах есть.
    Откройте ее или unit и увидите.
     
  3. Juli13rus

    Juli13rus Гость

    Делала сама я по образцу имеющейся лабораторной работы.
    Я создавала вторую форму, но т.к. не смогла вставить туда элементарно картинку как фон (никак не получается(((.. ) пришлось удалить, чтобы попробовать снова. В папке с проектом ни формы второй ни юнита второго нет. Но при срабатывании будильника программа открывает вторую форму, в которой нет изображения... откуда она взялась? ох((

    Добавлено: И до сих пор не могу понять... зачем строка сообщение? Сначала думала, что это то сообщение, которое будет появляться в итоге... Но оказалось, что нет. Может ее вообще удалить? или уж пусть будет...
     
  4. nayke

    nayke Well-Known Member

    Регистрация:
    4 авг 2010
    Сообщения:
    310
    Симпатии:
    0
    Чтобы добавить картинку на форму надо использовать компонент Image.
    Если форма открывается - думаю она есть. Попробуйте открыть ее в редакторе.
    Чудес не бывает..
     
Загрузка...
Похожие Темы - Требуется Помощь Очень
  1. MissPersefona
    Ответов:
    0
    Просмотров:
    801
  2. piranya85
    Ответов:
    0
    Просмотров:
    1.845
  3. panda8
    Ответов:
    0
    Просмотров:
    1.276
  4. Andrey Kha
    Ответов:
    0
    Просмотров:
    21
  5. Andrey Kha
    Ответов:
    0
    Просмотров:
    33
Статус темы:
Закрыта.

Поделиться этой страницей