⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gngl.pas

📁 Access数据库用户权限的管理程序
💻 PAS
字号:
unit GNGL;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, ImgList, StdCtrls,db,adodb, TFlatButtonUnit,
  TFlatMemoUnit, TFlatEditUnit, TFlatGroupBoxUnit, TFlatRadioButtonUnit;

type
  TGNGL_F = class(TForm)
    TreeView1: TTreeView;
    ImageList1: TImageList;
    FlatGroupBox2: TFlatGroupBox;
    Label18: TLabel;
    Label19: TLabel;
    Label3: TLabel;
    GNH_FE: TFlatEdit;
    GNM_FE: TFlatEdit;
    BZ_FM: TFlatMemo;
    FlatButton1: TFlatButton;
    TJ_QR: TFlatButton;
    FlatGroupBox7: TFlatGroupBox;
    XG_FRBtn: TFlatRadioButton;
    TJ_FRBtn: TFlatRadioButton;
    SC_FRBtn: TFlatRadioButton;
    procedure FormCreate(Sender: TObject);
    procedure Treeviewshow;
    procedure showinfo;
    procedure TreeView1Change(Sender: TObject; Node: TTreeNode);
    procedure TJ_QRClick(Sender: TObject);
    procedure FlatButton1Click(Sender: TObject);
    procedure XG_FRBtnClick(Sender: TObject);
    procedure TJ_FRBtnClick(Sender: TObject);
    procedure SC_FRBtnClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  GNGL_F: TGNGL_F;
  Connect:TADOConnection;
  GNB_T:TADOTable;
  Sel_caption:string;

implementation

{$R *.dfm}

procedure TGNGL_F.FormCreate(Sender: TObject);
begin
   Connect:=TADOConnection.Create(nil);
   Connect.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=.\Data.mdb;Persist Security Info=False';
   Connect.LoginPrompt:=false;
   Treeviewshow;

   GNB_T:=TADOTable.Create(nil);
   GNB_T.Connection:=Connect;
   GNB_T.TableName:='功能表';
   GNB_T.Open;
end;

procedure TGNGL_F.showinfo;
begin
  GNB_T.Locate('功能名',treeview1.Selected.Text,[]);
  GNH_FE.Text:=GNB_T.FieldValues['功能号'];
  GNM_FE.Text:=treeview1.Selected.Text;
  BZ_FM.Lines.Text:=GNB_T.FieldValues['备注'];
  Sel_caption:=treeview1.Selected.Text;
end;

procedure TGNGL_F.Treeviewshow;
var
  GNB_Q,ZCD_Q : TADOQuery;
  Root,Node,NodeS: TTreeNode;
begin
  GNB_Q := TADOQuery.Create(nil);
  GNB_Q.Connection := Connect;

  ZCD_Q := TADOQuery.Create(nil);
  ZCD_Q.Connection := Connect;

  Treeview1.Items.Clear;
  Treeview1.Items.BeginUpdate;
  Root:=treeview1.Items.AddFirst(nil,'功能列表');
  Root.ImageIndex:=0;

  ZCD_Q.SQL.Add('select * from 主菜单');
  ZCD_Q.Open;
  if ZCD_Q.RecordCount>0 then
    while not ZCD_Q.Eof do
      begin
        Node:=treeview1.Items.AddChild(Root,ZCD_Q.FieldValues['功能名']);
        Node.ImageIndex:=1;
        Node.SelectedIndex := 2;

        GNB_Q.Close;
        GNB_Q.SQL.Clear;
        GNB_Q.SQL.Add('select * from 功能表 where 父菜单号='+quotedstr(copy(ZCD_Q.FieldValues['功能号'],1,1)));
        GNB_Q.Open;
        if GNB_Q.RecordCount>0 then
          while not GNB_Q.Eof do
            begin
              NodeS:=treeview1.Items.AddChild(Node,GNB_Q.FieldValues['功能名']);
              NodeS.ImageIndex:=1;
              NodeS.SelectedIndex := 2;
              GNB_Q.Next;
            end;
        ZCD_Q.Next;
      end;
  treeview1.Items.endUpdate;
  treeview1.FullExpand;

end;

procedure TGNGL_F.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
  showinfo;
end;

procedure TGNGL_F.TJ_QRClick(Sender: TObject);
Var
  FCDH_Q:TADOQuery;
begin
  if TJ_FRBtn.Checked then
    begin
      FCDH_Q:=TADOQuery.Create(nil);
      FCDH_Q.Connection := Connect;
      FCDH_Q.Close;
      FCDH_Q.SQL.Clear;
      FCDH_Q.SQL.Add('select * from 主菜单 where 功能名='+quotedstr(Sel_caption)) ;
      FCDH_Q.open;
      if FCDH_Q.RecordCount>0 then
        begin
          GNB_T.Append;
          GNB_T.FieldByName('功能号').AsString:=GNH_FE.Text;
          GNB_T.FieldByName('功能名').AsString:=GNM_FE.Text;
          GNB_T.FieldByName('备注').AsString:=BZ_FM.Lines.Text;
          GNB_T.FieldByName('父菜单号').AsString:=copy(FCDH_Q.FieldValues['功能号'],1,1);
          GNB_T.Post;
          GNB_T.Requery;
          GNB_T.Locate('功能号',GNH_FE.Text,[]);
          showmessage('功能添加成功');
        end
      else
        showmessage('只能在二级菜单添加权限');
    end;

  if XG_FRBtn.Checked then
    begin
      GNB_T.Edit;
      GNB_T.FieldByName('功能号').AsString:=GNH_FE.Text;
      GNB_T.FieldByName('功能名').AsString:=GNM_FE.Text;
      GNB_T.FieldByName('备注').AsString:=BZ_FM.Lines.Text;
      GNB_T.Post;
      GNB_T.Requery;
      GNB_T.Locate('功能号',GNH_FE.Text,[]);
    end;

  if SC_FRBtn.Checked then
    begin
      GNB_T.Delete;
      GNH_FE.Text:='';
      GNM_FE.Text:='';
      BZ_FM.Lines.Text:='';
      showmessage('删除成功');
    end;

  GNH_FE.Enabled:=false;
  GNM_FE.Enabled:=false;
  BZ_FM.Enabled:=false;
  Treeviewshow;
end;

procedure TGNGL_F.FlatButton1Click(Sender: TObject);
begin
  close;
end;

procedure TGNGL_F.XG_FRBtnClick(Sender: TObject);
begin
  GNH_FE.Enabled:=true;
  GNM_FE.Enabled:=true;
  BZ_FM.Enabled:=true;
end;

procedure TGNGL_F.TJ_FRBtnClick(Sender: TObject);
begin
  GNH_FE.Enabled:=true;
  GNM_FE.Enabled:=true;
  BZ_FM.Enabled:=true;
  GNH_FE.Text:='';
  GNM_FE.Text:='';
  BZ_FM.Lines.Text:='';
end;

procedure TGNGL_F.SC_FRBtnClick(Sender: TObject);
begin
  GNH_FE.Enabled:=false;
  GNM_FE.Enabled:=false;
  BZ_FM.Enabled:=false;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -