?? unit5.~pas
字號:
unit Unit5;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ImgList, ToolWin, Grids, DBGrids, DB, ExtCtrls,adodb,
StdCtrls;
type
Tfrmoperates = class(TForm)
ToolBar1: TToolBar;
ImageList1: TImageList;
ToolButton1: TToolButton;
ToolButton3: TToolButton;
DataSource1: TDataSource;
ToolButton4: TToolButton;
Panel1: TPanel;
DBGrid1: TDBGrid;
StringGrid1: TStringGrid;
Panel2: TPanel;
Label1: TLabel;
Splitter1: TSplitter;
ToolButton2: TToolButton;
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure StringGrid1DblClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
private
{ Private declarations }
procedure get_right(DataSet: TDataSet);
procedure set_right(DataSet: TDataSet);
public
{ Public declarations }
end;
var
frmoperates: Tfrmoperates;
implementation
uses Unit3, Unit6, Unit4;
{$R *.dfm}
procedure Tfrmoperates.FormCreate(Sender: TObject);
begin
dm1.ADOQuery1.Close;
dm1.ADOQuery1.SQL.Text:='select * from users';
dm1.ADOQuery1.Open;
StringGrid1.ColWidths[0]:=120;
StringGrid1.ColWidths[0]:=80;
StringGrid1.ColWidths[0]:=100;
StringGrid1.Cells[0,0]:='功能';
StringGrid1.Cells[0,1]:='上機用戶信息表';
StringGrid1.Cells[0,2]:='交費記錄表';
StringGrid1.Cells[0,3]:='上機安排表';
StringGrid1.Cells[0,4]:='設備情況表';
StringGrid1.Cells[0,5]:='上機記錄表';
StringGrid1.Cells[1,0]:='瀏覽';
StringGrid1.Cells[2,0]:='修改';
StringGrid1.Cells[3,0]:='刪除';
// get_right(dm1.ADOQuery1);
dm1.ADOQuery1.AfterScroll:=get_right;
dm1.ADOQuery1.BeforeScroll:=set_right;
end;
procedure Tfrmoperates.FormShow(Sender: TObject);
begin
DBGrid1.Columns.Add;
DBGrid1.Columns[DBGrid1.Columns.Count-1].FieldName:='name';
DBGrid1.Columns[DBGrid1.Columns.Count-1].Title.caption:='姓名';
DBGrid1.Columns[DBGrid1.Columns.Count-1].Width:=120;
DBGrid1.Columns.Add;
DBGrid1.Columns[DBGrid1.Columns.Count-1].FieldName:='create_date';
DBGrid1.Columns[DBGrid1.Columns.Count-1].Title.caption:='開始使用日期';
DBGrid1.Columns[DBGrid1.Columns.Count-1].Width:=120;
dm1.ADOQuery1.First;
end;
procedure Tfrmoperates.StringGrid1DblClick(Sender: TObject);
begin
if StringGrid1.cells[StringGrid1.col,StringGrid1.row]='有' then
begin
StringGrid1.cells[StringGrid1.col,StringGrid1.row]:='無'
end
else
begin
StringGrid1.cells[StringGrid1.col,StringGrid1.row]:='有';
end;
//***************************************
//2004-05-13 qhb
//設置權限
//***************************************
// set_right(dm1.ADOQuery1);
end;
//***************************************
//2004-05-13 qhb
//獲得權限
//***************************************
procedure Tfrmoperates.get_right;
var qu:tadoquery;
i,j:integer;
begin
if dm1.ADOQuery1.Eof then
exit;
qu:=tadoquery.Create(nil);
qu.Connection:=dm1.ADOCon1;
for i:=1 to StringGrid1.RowCount-1 do
for j:=1 to StringGrid1.ColCount-1 do
begin
qu.SQL.Text:='select name from rights where name='''
+trim(dm1.ADOQuery1.fieldbyname('name').AsString)+''' and function='''
+StringGrid1.Cells[0,j]+''' and rights='''
+StringGrid1.Cells[i,0]+'''';
qu.Open;
if qu.Eof then
StringGrid1.Cells[j,i]:='無'
else
StringGrid1.Cells[j,i]:='有';
qu.close;
end;
qu.Close;
qu.Free;
end;
//***************************************
//2004-05-13 qhb
//設置權限
//***************************************
procedure Tfrmoperates.set_right;
var i,j:integer;
s:string;
begin
dm1.ADOCon1.Execute('delete from rights where name='''
+trim(dm1.ADOQuery1.fieldbyname('name').asstring)+'''');
for i:=1 to StringGrid1.RowCount-1 do
for j:=1 to StringGrid1.ColCount-1 do
if StringGrid1.Cells[j,i]='有' then
begin
s:='insert into rights (name,function,rights) values ('''
+trim(dm1.ADOQuery1.fieldbyname('name').asstring)+''','''
+StringGrid1.Cells[0,j]+''','''+StringGrid1.Cells[i,0]+''')';
dm1.ADOCon1.Execute(s);
end;
end;
procedure Tfrmoperates.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
dm1.ADOQuery1.AfterScroll:=nil;
end;
procedure Tfrmoperates.ToolButton3Click(Sender: TObject);
begin
application.CreateForm(tfrmedusers,frmedusers);
frmedusers.ty:=1;
frmedusers.ShowModal;
dm1.ADOQuery1.close;
dm1.ADOQuery1.Open;
end;
procedure Tfrmoperates.ToolButton1Click(Sender: TObject);
var na:string;
begin
na:=trim(dm1.ADOQuery1.fieldbyname('name').AsString);
if application.MessageBox(pchar('確定刪除'+na+'?'),'',MB_YESNO)<>IDYES then
exit;
dm1.ADOQuery1.close;
dm1.ADOCon1.Execute('delete from users where name='''
+na+'''');
dm1.ADOQuery1.Open;
application.MessageBox('已刪除','',64);
end;
procedure Tfrmoperates.ToolButton4Click(Sender: TObject);
begin
application.CreateForm(tfrmedusers,frmedusers);
frmedusers.ty:=2;
frmedusers.ShowModal;
end;
procedure Tfrmoperates.ToolButton2Click(Sender: TObject);
begin
application.CreateForm(tfrmedusers,frmedusers);
frmedusers.ty:=3;
frmedusers.ShowModal;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -