📄 unit4.pas
字号:
unit Unit4;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, Buttons, Grids, DBGrids, DB, MPlayer;
type
TForm4 = class(TForm)
GroupBox1: TGroupBox;
Panel1: TPanel;
GroupBox2: TGroupBox;
Panel2: TPanel;
Label1: TLabel;
ComboBox1: TComboBox;
BitBtn1: TBitBtn;
GroupBox3: TGroupBox;
DBGrid1: TDBGrid;
Timer1: TTimer;
ds1: TDataSource;
Panel3: TPanel;
Label2: TLabel;
Timer2: TTimer;
Timer3: TTimer;
mp1: TMediaPlayer;
mp2: TMediaPlayer;
mp3: TMediaPlayer;
procedure FormShow(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ComboBox1Change(Sender: TObject);
procedure injust;
procedure Timer2Timer(Sender: TObject);
procedure Timer3Timer(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure souplay;
Procedure Kjsouplay;
procedure zjsouplay;
procedure mp1Notify(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
n,state,p,col,coll:integer;
opt:integer;
implementation
uses Unit8,Unit1, Unit2;
{$R *.dfm}
procedure TForm4.FormShow(Sender: TObject);
var i:integer;
begin
form1.Mp1.Stop;
form1.mp2.Stop;
if form1.sou3=0 then
begin
form4.souplay;
end;
state:=0;
p:=0;
opt:=0;
col:=0;
coll:=0;
combobox1.items.Clear;
timer2.Enabled:=true;
dm.ADOQ7.Close;
dm.ADOQ7.Open;
dm.ADOQ6.Close;
dm.ADOQ6.SQL.Clear;
dm.ADOQ6.SQL.Add('select * from JX_Table');
dm.ADOQ6.Open;
if dm.ADOQ6.RecordCount>0 then
begin
for i:=0 to dm.ADOQ6.RecordCount-1 do
begin
combobox1.Items.Add(dm.ADOQ6.Fieldbyname('Nav_JXname').AsString);
dm.ADOQ6.Next;
end;
end;
end;
procedure TForm4.BitBtn1Click(Sender: TObject);
var s,m:string;
begin
if combobox1.ItemIndex=-1 then
begin
exit;
end;
form4.injust;
if opt=1 then exit;
dm.ADOQ6.Close;
dm.ADOQ6.SQL.Clear;
dm.ADOQ6.SQL.Add('select * from User_Table where Nav_ZJbs=:a');
dm.ADOQ6.Parameters.ParamByName('a').Value:='0';
dm.ADOQ6.Open;
if dm.ADOQ6.RecordCount=0 then
begin
exit;
end;
if state=0 then
begin
state:=1;
p:=0;
bitbtn1.Caption:=' 停 止 ';
form4.Kjsouplay;
coll:=0;
timer3.Enabled:=false;
label2.Font.Color:=clBlue;
timer1.Enabled:=true;
end
else
begin
state:=0;
p:=1;
bitbtn1.Caption:=' 开 始 ';
form4.zjsouplay;
timer1.Enabled:=false;
timer3.Enabled:=true;
end;
if p=1 then
begin
s:='update User_Table set Nav_ZJbs=:b and Nav_ZJname=:c where Nav_User=:a';
dm.ADOQ8.Close;
dm.ADOQ8.SQL.Clear;
dm.ADOQ8.SQL.Add('update User_Table set Nav_ZJbs=:b, Nav_ZJname=:c where Nav_User=:a');
dm.ADOQ8.Parameters.ParamByName('b').Value:='1';
// dm.ADOQ8.Parameters.ParamByName('a').Value:=Trim(label2.Caption);
dm.ADOQ8.Parameters.ParamByName('a').Value:=dm.ADOQ9.Fieldbyname('Nav_User').AsString;
dm.ADOQ8.Parameters.ParamByName('c').Value:=Trim(combobox1.Text);
m:=combobox1.Text;
dm.ADOQ8.ExecSQL;
dm.ADOQ7.Close;
dm.ADOQ7.Open;
end;
end;
procedure TForm4.Timer1Timer(Sender: TObject);
begin
dm.ADOQ9.Close;
dm.ADOQ9.Open;
n:=random(dm.ADOQ9.RecordCount);
dm.ADOQ9.MoveBy(n);
label2.Caption:=dm.ADOQ9.Fieldbyname('Nav_User').AsString;
panel1.Refresh;
end;
procedure TForm4.FormClose(Sender: TObject; var Action: TCloseAction);
begin
timer2.Enabled:=false;
mp1.Stop;
mp2.Stop;
mp3.Stop;
form1.Show;
form1.opt2:=0;
if form1.sou2=0 then
begin
form1.Mp1.Stop;
form1.mp2.Play;
end;
end;
procedure TForm4.ComboBox1Change(Sender: TObject);
begin
form4.injust;
if bitbtn1.Enabled=true then
bitbtn1.SetFocus;
end;
procedure TForm4.injust;
var sCounts:integer;
begin
dm.ADOQ10.Close;
dm.ADOQ10.SQL.Clear;
dm.ADOQ10.SQL.Add('select Nav_JXcount from JX_Table where Nav_JXname=:a');
dm.ADOQ10.Parameters.ParamByName('a').Value:=Trim(combobox1.Text);
dm.ADOQ10.Open;
sCounts:=dm.ADOQ10.Fieldbyname('Nav_JXcount').AsInteger;
dm.ADOQ11.Close;
dm.ADOQ11.SQL.Clear;
dm.ADOQ11.SQL.Add('select * from User_Table where Nav_ZJbs=:a and Nav_ZJname=:b');
dm.ADOQ11.Parameters.ParamByName('a').Value:='1';
dm.ADOQ11.Parameters.ParamByName('b').Value:=Trim(combobox1.Text);
dm.ADOQ11.Open;
if sCounts=dm.ADOQ11.RecordCount then
begin
showmessage('该奖项已经发放完毕!');
bitbtn1.Enabled:=false;
opt:=1;
exit;
end
else
begin
bitbtn1.Enabled:=true;
opt:=0;
end;
end;
procedure TForm4.Timer2Timer(Sender: TObject);
begin
if col=4 then col:=0;
if col=0 then panel3.Font.Color:=clFuchsia;
if col=1 then panel3.Font.Color:=clblue;
if col=2 then panel3.Font.Color:=clred;
if col=3 then panel3.Font.Color:=clGreen;
col:=col+1;
end;
procedure TForm4.Timer3Timer(Sender: TObject);
begin
if coll=2 then coll:=0;
if coll=0 then label2.Font.Color:=clFuchsia;
//if coll=1 then label2.Font.Color:=clblue;
if coll=1 then label2.Font.Color:=clred;
//if coll=3 then label2.Font.Color:=clGreen;
coll:=coll+1;
end;
procedure TForm4.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (key=VK_F2) then
begin
form1.Show;
form4.Close;
end;
end;
procedure TForm4.souplay;
begin
if form1.sou5=0 then
begin
mp1.Play;
mp2.Stop;
mp3.Stop;
end
else
begin
mp1.Stop;
end;
end;
procedure TForm4.Kjsouplay;
begin
if form1.sou3=0 then
begin
mp2.Position:=0;
mp2.Play;
mp1.Stop;
mp3.Stop;
end
else
begin
mp2.Stop;
end;
end;
procedure TForm4.zjsouplay;
begin
if form1.sou4=0 then
begin
mp3.Position:=0;
mp3.Play;
mp2.Stop;
if mp3.Position=mp3.Length then
begin
form4.souplay;
end;
end
else
begin
mp3.Stop;
end;
end;
procedure TForm4.mp1Notify(Sender: TObject);
begin
{ if ((form1.re3=0) and (form1.sou5=0)) then
begin
if ((mp1.Position=mp1.Length) and (mp1.NotifyValue=nvSuccessful)) then
begin
mp1.Position:=0;
mp1.Play;
end;
end; }
end;
procedure TForm4.FormCreate(Sender: TObject);
begin
combobox1.Width:=round(panel2.Width/2);
combobox1.Left:=round(panel2.Width / 2) - round(combobox1.Width / 2);
label1.Left:=combobox1.Left-label1.Width-5;
bitbtn1.Left:=combobox1.Left;
bitbtn1.Width:=combobox1.Width;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -