u1.pas
上传用户:pegasus
上传日期:2013-04-14
资源大小:3825k
文件大小:5k
源码类别:

教育系统应用

开发平台:

Delphi

  1. {****************************************************************** }
  2. {              第一阶段-开篇立论阶段                                }
  3. {                                                                   }
  4. {****************************************************************** }
  5. unit u1;
  6. interface
  7. uses
  8.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  9.   Dialogs, StdCtrls, ExtCtrls, Buttons, MPlayer, jpeg, Menus;
  10. type
  11.   TForm1 = class(TForm)
  12.     Label1: TLabel;
  13.     timer1: TTimer;
  14.     gbZh: TGroupBox;
  15.     lbZh: TLabel;
  16.     gbF: TGroupBox;
  17.     lbF: TLabel;
  18.     sbtnFStart: TSpeedButton;
  19.     ZhLeftTime: TLabel;
  20.     FLeftTime: TLabel;
  21.     Timer2: TTimer;
  22.     lb: TLabel;
  23.     Image1: TImage;
  24.     sbtnZhStart: TSpeedButton;
  25.     MainMenu1: TMainMenu;
  26.     N1: TMenuItem;
  27.     mmiZhColor: TMenuItem;
  28.     mmiZhBackColor: TMenuItem;
  29.     mmiFBackColor: TMenuItem;
  30.     mmiFColor: TMenuItem;
  31.     N6: TMenuItem;
  32.     N7: TMenuItem;
  33.     mmiExit: TMenuItem;
  34.     ColorDlg: TColorDialog;
  35.     procedure timer1Timer(Sender: TObject);
  36.     procedure sbtnZhStartClick(Sender: TObject);
  37.     procedure sbtnFStartClick(Sender: TObject);
  38.     procedure Timer2Timer(Sender: TObject);
  39.     procedure FormKeyPress(Sender: TObject; var Key: Char);
  40.     procedure FormCreate(Sender: TObject);
  41.     procedure mmiExitClick(Sender: TObject);
  42.     procedure mmiZhColorClick(Sender: TObject);
  43.     procedure mmiZhBackColorClick(Sender: TObject);
  44.     procedure mmiFColorClick(Sender: TObject);
  45.     procedure mmiFBackColorClick(Sender: TObject);
  46.   private
  47.     { Private declarations }
  48.      it :integer;
  49.   public
  50.     { Public declarations }
  51.   end;
  52. var
  53.   Form1: TForm1;
  54. implementation
  55. uses
  56.   uMain;
  57. const
  58.   TM:integer=1800;
  59.  // TM:integer=35;
  60. {$R *.dfm}
  61. {正方计时}
  62. procedure TForm1.timer1Timer(Sender: TObject);
  63. begin
  64.   ZhleftTime.Caption:=IntToTime(it);
  65.   if it=300 then
  66.   begin
  67.     beep1;
  68.   end;
  69.   if it=0 then
  70.   begin
  71.    uMain.beep2;
  72.   end;
  73.   it:=it-1;
  74.   
  75. end;
  76. {反方计时}
  77. procedure TForm1.sbtnZhStartClick(Sender: TObject);
  78. begin
  79.    case    sbtnZhStart.Tag of
  80.      0:
  81.      begin
  82.        sbtnZhStart.Caption:='停止计时';
  83.        lb.Caption:='正 方 计 时 中';
  84.        lb.Font:=sbtnZhStart.Font;
  85.        it:=TM;
  86.        timer1.Enabled:=True;
  87.        sbtnZhStart.Tag:=1;
  88.      end;
  89.     1:
  90.      begin
  91.        timer1.Enabled:=False;
  92.        sbtnZhStart.Enabled:=False;
  93.        sbtnFStart.Enabled:=True;
  94.          lb.Caption:='';
  95.      end;
  96.   end;
  97. end;
  98. procedure TForm1.sbtnFStartClick(Sender: TObject);
  99. begin
  100.   case sbtnFStart.Tag of
  101.     0:
  102.      begin
  103.        sbtnFStart.Caption:='停止计时';
  104.        lb.Caption:='反 方 计 时 中';
  105.        lb.Font:=sbtnFStart.Font;
  106.        timer2.Enabled:=True;
  107.        it:=TM;
  108.        sbtnFStart.Tag:=1;
  109.      end;
  110.     1:
  111.      begin
  112.         timer2.Enabled:=False;
  113.         sbtnFStart.Enabled:=False;
  114.         lb.Caption:='';
  115.      end;
  116.   end;
  117. end;
  118. procedure TForm1.Timer2Timer(Sender: TObject);
  119. begin
  120.   FleftTime.Caption:=IntToTime(it);
  121.  // FleftTime.Caption:=IntToStr(it)+'秒';
  122. //  if it=30 then
  123.  // begin
  124.  //   beep;
  125.  // end;
  126.    if it=300 then
  127.   begin
  128.     beep1;
  129.   end;
  130.   if it=0 then
  131.   begin
  132.    uMain.beep2;
  133.   end;
  134.   it:=it-1;
  135. end;
  136. //////////////////////////////////////////////////////////////
  137. /////////////////////////////////////////////////////////////
  138. ////   按  Q 或 q 键 关闭窗体
  139. //
  140. ////////////////////////////////////////////////////////////
  141. procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
  142. begin
  143.   if (Key=#113) or (Key=#81) then
  144.     Close;
  145. end;
  146. procedure TForm1.FormCreate(Sender: TObject);
  147. begin
  148.   it:=1800;
  149.   lbZh.Font.Color:=uMain.ZhFontColor;
  150.   ZhLeftTime.Font.Color:= uMain.ZhFontColor;
  151.   lbF.Font.Color:=uMain.FFontColor;
  152.   FLeftTime.Font.Color:= uMain.FFontColor;
  153.   gbZh.Color:=uMain.ZhBackgroundColor;
  154.   gbF.Color:=uMain.FBackgroundColor;
  155. end;
  156. procedure TForm1.mmiExitClick(Sender: TObject);
  157. begin
  158.   Close;
  159. end;
  160. procedure TForm1.mmiZhColorClick(Sender: TObject);
  161. begin
  162.   if ColorDlg.Execute then
  163.   begin
  164.     uMain.ZhFontColor:= ColorDlg.Color;
  165.     lbZh.Font.Color:=uMain.ZhFontColor;
  166.     ZhLeftTime.Font.Color:= uMain.ZhFontColor;
  167.   end;
  168. end;
  169. procedure TForm1.mmiZhBackColorClick(Sender: TObject);
  170. begin
  171.    if ColorDlg.Execute then
  172.    begin
  173.      uMain.ZhBackgroundColor:= ColorDlg.Color;
  174.       gbZh.Color:=uMain.ZhBackgroundColor;
  175.    end;
  176. end;
  177. procedure TForm1.mmiFColorClick(Sender: TObject);
  178. begin
  179.    if ColorDlg.Execute then
  180.    begin
  181.      uMain.FFontColor:= ColorDlg.Color;
  182.      lbF.Font.Color:=uMain.FFontColor;
  183.      FLeftTime.Font.Color:= uMain.FFontColor;
  184.    end;
  185. end;
  186. procedure TForm1.mmiFBackColorClick(Sender: TObject);
  187. begin
  188.    if ColorDlg.Execute then
  189.    begin
  190.     uMain.FBackgroundColor:= ColorDlg.Color;
  191.     gbF.Color:=uMain.FBackgroundColor;
  192.    end;
  193. end;
  194. end.