?? fmain.pas
字號(hào):
unit fmain;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxControls, cxSplitter, ExtCtrls, RzSplit, RzPanel, cxStyles,
cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB,
cxDBData, ADODB, cxGridLevel, cxClasses, cxGridCustomView,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid,flogin,
RzTabs, cxNavigator, cxDBNavigator, cxDBEdit, cxTextEdit, cxMemo,
cxContainer, cxLabel, cxMaskEdit, cxDropDownEdit, cxLookAndFeels,
cxLookAndFeelPainters, StdCtrls, cxButtons, Grids, DBGrids;
type
TForm2 = class(TForm)
adsAthlete: TADODataSet;
dsArhlete: TDataSource;
RzPageControl1: TRzPageControl;
TabSheet1: TRzTabSheet;
TabSheet2: TRzTabSheet;
RzPanel2: TRzPanel;
RzSplitter1: TRzSplitter;
RzPanel1: TRzPanel;
RzSplitter2: TRzSplitter;
adsDepartment: TADODataSet;
adsEvent: TADODataSet;
dsDepartment: TDataSource;
dsEvent: TDataSource;
RzPanel4: TRzPanel;
adsGame: TADODataSet;
dsGame: TDataSource;
RzSplitter3: TRzSplitter;
RzPanel3: TRzPanel;
cxGrid1: TcxGrid;
cxGrid1DBTableView1: TcxGridDBTableView;
cxGrid1DBTableView1athNO: TcxGridDBColumn;
cxGrid1DBTableView1athName: TcxGridDBColumn;
cxGrid1DBTableView1athDep: TcxGridDBColumn;
cxGrid1DBTableView1athSex: TcxGridDBColumn;
cxGrid1DBTableView1athMemo: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
cxDBNavigator1: TcxDBNavigator;
RzPanel6: TRzPanel;
RzGroupBox1: TRzGroupBox;
cxLabel1: TcxLabel;
cxDBTextEdit1: TcxDBTextEdit;
cxDBTextEdit2: TcxDBTextEdit;
cxLabel2: TcxLabel;
cxLabel3: TcxLabel;
cxDBComboBox1: TcxDBComboBox;
cxLabel4: TcxLabel;
cxDBComboBox2: TcxDBComboBox;
cxDBMemo1: TcxDBMemo;
cxLabel5: TcxLabel;
cxLookAndFeelController1: TcxLookAndFeelController;
RzGroupBox2: TRzGroupBox;
cxLabel8: TcxLabel;
cxLabel9: TcxLabel;
cxLabel10: TcxLabel;
cxLabel11: TcxLabel;
cxLabel12: TcxLabel;
cxComboBox1: TcxComboBox;
cxComboBox2: TcxComboBox;
cxTextEdit1: TcxTextEdit;
cxTextEdit2: TcxTextEdit;
cxMemo1: TcxMemo;
RzSplitter4: TRzSplitter;
RzPanel5: TRzPanel;
cxGrid2: TcxGrid;
cxGrid2DBTableView1: TcxGridDBTableView;
cxGrid2DBTableView1athNO: TcxGridDBColumn;
cxGrid2DBTableView1eveName: TcxGridDBColumn;
cxGrid2DBTableView1memo: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
cxDBNavigator2: TcxDBNavigator;
RzPanel7: TRzPanel;
RzGroupBox3: TRzGroupBox;
cxLabel6: TcxLabel;
cxDBComboBox3: TcxDBComboBox;
cxLabel7: TcxLabel;
cxDBComboBox4: TcxDBComboBox;
RzGroupBox4: TRzGroupBox;
cxLabel13: TcxLabel;
cxLabel14: TcxLabel;
cxComboBox3: TcxComboBox;
cxComboBox4: TcxComboBox;
cxMemo2: TcxMemo;
cxLabel15: TcxLabel;
cxDBMemo2: TcxDBMemo;
cxLabel16: TcxLabel;
TabSheet3: TRzTabSheet;
RzSplitter5: TRzSplitter;
RzPanel8: TRzPanel;
RzSplitter6: TRzSplitter;
RzPanel9: TRzPanel;
RzPanel10: TRzPanel;
cxGrid3DBTableView1: TcxGridDBTableView;
cxGrid3Level1: TcxGridLevel;
cxGrid3: TcxGrid;
cxGrid3DBTableView1eveName: TcxGridDBColumn;
cxGrid3DBTableView1athNO: TcxGridDBColumn;
cxGrid3DBTableView1firAchi: TcxGridDBColumn;
cxGrid3DBTableView1firPla: TcxGridDBColumn;
cxGrid3DBTableView1memo: TcxGridDBColumn;
ADOQuery1: TADOQuery;
RzPanel11: TRzPanel;
cxDBNavigator3: TcxDBNavigator;
cxButton1: TcxButton;
TabSheet4: TRzTabSheet;
RzPanel12: TRzPanel;
cxGrid4DBTableView1: TcxGridDBTableView;
cxGrid4Level1: TcxGridLevel;
cxGrid4: TcxGrid;
RzPanel13: TRzPanel;
cxDBNavigator4: TcxDBNavigator;
cxGrid4DBTableView1eveName: TcxGridDBColumn;
cxGrid4DBTableView1athNO: TcxGridDBColumn;
cxGrid4DBTableView1firAchi: TcxGridDBColumn;
cxGrid4DBTableView1firPla: TcxGridDBColumn;
cxGrid4DBTableView1finAchi: TcxGridDBColumn;
cxGrid4DBTableView1finPla: TcxGridDBColumn;
cxGrid4DBTableView1memo: TcxGridDBColumn;
cxButton2: TcxButton;
cxGrid2DBTableView1firAchi: TcxGridDBColumn;
cxGrid2DBTableView1firPla: TcxGridDBColumn;
cxGrid2DBTableView1finAchi: TcxGridDBColumn;
cxGrid2DBTableView1finPla: TcxGridDBColumn;
adsFinal: TADODataSet;
dsFinal: TDataSource;
cxButton3: TcxButton;
cxGrid4DBTableView1score: TcxGridDBColumn;
cxButton4: TcxButton;
cxButton5: TcxButton;
cxButton6: TcxButton;
cxButton7: TcxButton;
cxButton8: TcxButton;
cxButton9: TcxButton;
cxButton10: TcxButton;
procedure FormCreate(Sender: TObject);
procedure TabSheet2Enter(Sender: TObject);
procedure cxButton1Click(Sender: TObject);
procedure cxButton2Click(Sender: TObject);
procedure cxButton3Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure cxButton4Click(Sender: TObject);
procedure cxButton5Click(Sender: TObject);
procedure cxButton6Click(Sender: TObject);
procedure cxButton7Click(Sender: TObject);
procedure cxButton8Click(Sender: TObject);
procedure cxButton9Click(Sender: TObject);
procedure cxButton10Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
function count(pla,num:Integer):Single;
end;
var
Form2: TForm2;
implementation
uses csydy,csxx;
{$R *.dfm}
procedure TForm2.FormCreate(Sender: TObject);
begin
adsDepartment.First;
cxDBComboBox2.Properties.Items.Clear;
while not adsDepartment.Eof do
begin
cxDBComboBox2.Properties.Items.Add(adsDepartment['depName']);
adsDepartment.Next;
end;
cxGrid1DBTableView1athDep.Properties:= cxDBComboBox2.Properties;
adsEvent.First;
cxDBComboBox4.Properties.Items.Clear;
while not adsEvent.Eof do
begin
cxDBComboBox4.Properties.Items.Add(adsEvent['eveName']);
adsEvent.Next;
end;
cxComboBox2.Properties:= cxDBComboBox2.Properties;
cxComboBox4.Properties:= cxDBComboBox4.Properties;
cxGrid2DBTableView1eveName.Properties:= cxDBComboBox4.Properties;
cxTextEdit1.Text:= IntToStr(adsAthlete.recordcount+1);
end;
procedure TForm2.TabSheet2Enter(Sender: TObject);
begin
adsAthlete.First;
cxDBComboBox3.Properties.Items.Clear;
while not adsAthlete.Eof do
begin
cxDBComboBox3.Properties.Items.Add(adsAthlete['athNO']);
adsAthlete.Next;
end;
cxGrid2DBTableView1athNO.Properties:= cxDBComboBox3.Properties;
cxComboBox3.Properties:= cxDBComboBox3.Properties;
end;
procedure TForm2.cxButton1Click(Sender: TObject);
var
event,flag: String; temp,place: Integer;preFirAchi:Variant;
begin
adsGame.DisableControls;
adsEvent.DisableControls;
ADOQuery1.DisableControls;
adsEvent.First;
while not adsEvent.Eof do
begin
event:= adsEvent['eveName'];
if adsEvent['eveClass'] = '徑賽' then flag:= 'asc'
else flag:= 'desc';
ADOQuery1.Active:= False;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select eveName,athNo,firAchi,firPla from game where eveName = "'+event+'" order by firAchi '+flag);
ADOQuery1.Active:= True;
if ADOQuery1.RecordCount = 0 then begin
adsEvent.Next;
Continue;
end;
ADOQuery1.First;
temp:=1;
place:=1;
ADOQuery1.Edit;
ADOQuery1['firPla']:=place;
ADOQuery1.Post;
preFirAchi:= ADOQuery1['firAchi'];
ADOQuery1.Next;
while not ADOQuery1.Eof do
begin
if ADOQuery1['firAchi']=preFirAchi then begin
Inc(temp);
ADOQuery1.Edit;
ADOQuery1['firPla']:= place;
ADOQuery1.Post;
preFirAchi:= ADOQuery1['firAchi'];
end
else begin
ADOQuery1.Edit;
place:= place+temp;
ADOQuery1['firPla']:= place;
ADOQuery1.Post;
temp:=1;
preFirAchi:= ADOQuery1['firAchi'];
end;
ADOQuery1.Next;
end;
adsEvent.Next;
end;
adsGame.Refresh;
ShowMessage('排名完成!');
adsGame.EnableControls;
adsEvent.EnableControls;
ADOQuery1.EnableControls;
end;
procedure TForm2.cxButton2Click(Sender: TObject);
var
event,flag: String; temp,place: Integer;preFinAchi:Variant;
begin
adsEvent.First;
while not adsEvent.Eof do
begin
event:= adsEvent['eveName'];
if adsEvent['eveClass'] = '徑賽' then flag:= 'asc'
else flag:= 'desc';
ADOQuery1.Active:= False;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select eveName,athNo,finAchi,finPla,score from game where eveName = "'+event+'" order by finAchi '+flag);
ADOQuery1.Active:= True;
if ADOQuery1.RecordCount = 0 then begin
adsEvent.Next;
Continue;
end;
ADOQuery1.First;
temp:=1;
place:=1;
ADOQuery1.Edit;
ADOQuery1['finPla']:=place;
ADOQuery1.Post;
preFinAchi:= ADOQuery1['finAchi'];
ADOQuery1.Next;
while not ADOQuery1.Eof do
begin
if ADOQuery1['finAchi']=preFinAchi then begin
Inc(temp);
ADOQuery1.Edit;
ADOQuery1['finPla']:= place;
ADOQuery1.Post;
preFinAchi:= ADOQuery1['finAchi'];
end
else begin
ADOQuery1.Edit;
place:= place+temp;
ADOQuery1['finPla']:= place;
ADOQuery1.Post;
temp:=1;
preFinAchi:= ADOQuery1['finAchi'];
end;
ADOQuery1.Next;
end;
adsEvent.Next;
end;
adsFinal.Refresh;
ShowMessage('排名完成!');
end;
procedure TForm2.cxButton3Click(Sender: TObject);
var
event,flag: String; temp,place: Integer;preFirAchi:Variant;
begin
adsFinal.Close;
adsEvent.First;
while not adsEvent.Eof do
begin
event:= adsEvent['eveName'];
if adsEvent['eveClass'] = '徑賽' then flag:= 'asc'
else flag:= 'desc';
ADOQuery1.Active:= False;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select eveName,athNo,firAchi,firPla from game where eveName = "'+event+'" order by firAchi '+flag);
ADOQuery1.Active:= True;
if ADOQuery1.RecordCount = 0 then begin
adsEvent.Next;
Continue;
end;
ADOQuery1.First;
temp:=1;
place:=1;
ADOQuery1.Edit;
ADOQuery1['firPla']:=place;
ADOQuery1.Post;
preFirAchi:= ADOQuery1['firAchi'];
ADOQuery1.Next;
while not ADOQuery1.Eof do
begin
if ADOQuery1['firAchi']=preFirAchi then begin
Inc(temp);
ADOQuery1.Edit;
ADOQuery1['firPla']:= place;
ADOQuery1.Post;
preFirAchi:= ADOQuery1['firAchi'];
end
else begin
ADOQuery1.Edit;
place:= place+temp;
ADOQuery1['firPla']:= place;
ADOQuery1.Post;
temp:=1;
preFirAchi:= ADOQuery1['firAchi'];
end;
ADOQuery1.Next;
end;
adsEvent.Next;
end;
adsFinal.Open;
ShowMessage('決賽名單生成完成!');
end;
function TForm2.count(pla, num: Integer): Single;
begin
case pla of
1: Result:= (17-num)/2+1/num;
2: Result:= (15-num)/2;
3: Result:= (13-num)/2;
4: Result:= (11-num)/2;
5: Result:= (9-num)/2;
6: Result:= (7-num)/2;
7: Result:= (5-num)/2;
8: Result:= (3-num)/2;
else
Result:= 0;
end;
end;
procedure TForm2.Button1Click(Sender: TObject);
begin
ADOQuery1.Active:= False;
ADOQuery1.SQL.Add('select count(finPla) as num from game where finPla=1');
ADOQuery1.Active:= True;
end;
procedure TForm2.cxButton4Click(Sender: TObject);
var
event: string;i:Integer;
begin
adsEvent.DisableControls;
adsFinal.DisableControls;
ADOQuery1.DisableControls;
adsEvent.First;
while not adsEvent.Eof do
begin
event:= adsEvent['eveName'];
for i:=1 to 8 do
begin
ADOQuery1.Active:= False;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select eveName,athNo,score from game where eveName = "'+event+'" and finPla = '+IntToStr(i));
ADOQuery1.Active:= True;
ADOQuery1.First;
while not ADOQuery1.Eof do
begin
ADOQuery1.Edit;
ADOQuery1['score']:= count(i,ADOQuery1.RecordCount);
ADOQuery1.Post;
ADOQuery1.Next;
end;
end;
adsEvent.Next;
end;
adsEvent.EnableControls;
adsFinal.EnableControls;
ADOQuery1.EnableControls;
adsFinal.Refresh;
ShowMessage('計(jì)分完成!');
end;
procedure TForm2.cxButton5Click(Sender: TObject);
begin
adsAthlete.Append;
adsAthlete.FieldByName('athNO').AsString:= Trim(cxTextEdit1.Text);
adsAthlete.FieldByName('athName').AsString:= Trim(cxTextEdit2.Text);
adsAthlete.FieldByName('athSex').AsString:= Trim(cxComboBox1.Text);
adsAthlete.FieldByName('athDep').AsString:= Trim(cxComboBox2.Text);
adsAthlete.FieldByName('athMemo').AsString:= Trim(cxMemo1.Text);
adsAthlete.Post;
cxTextEdit1.Text:= IntToStr(adsAthlete.recordcount+1);
cxTextEdit2.Clear;
cxMemo1.Clear;
cxTextEdit2.SetFocus;
end;
procedure TForm2.cxButton6Click(Sender: TObject);
begin
adsGame.Append;
adsGame.FieldByName('athNO').AsString:= Trim(cxComboBox3.Text);
adsGame.FieldByName('eveName').AsString:= Trim(cxComboBox4.Text);
adsGame.FieldByName('memo').AsString:= Trim(cxmemo2.Text);
adsGame.Post;
end;
procedure TForm2.cxButton7Click(Sender: TObject);
begin
adsAthlete.Post;
end;
procedure TForm2.cxButton8Click(Sender: TObject);
begin
adsGame.Post;
end;
procedure TForm2.cxButton9Click(Sender: TObject);
begin
form3.Show;
end;
procedure TForm2.cxButton10Click(Sender: TObject);
begin
form4.Show;
end;
end.
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -