?? right.cpp
字號:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Right.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TfmRightManage *fmRightManage;
//---------------------------------------------------------------------------
__fastcall TfmRightManage::TfmRightManage(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TfmRightManage::FormClose(TObject *Sender,
TCloseAction &Action)
{
// 刪除窗體并回收空間
Action = caFree;
}
//---------------------------------------------------------------------------
void __fastcall TfmRightManage::Table1AfterScroll(TDataSet *DataSet)
{
// 先去除所有的權限標志
for(int i=0; i<CheckListBox1->Items->Count; i++)
CheckListBox1->Checked[i] = false;
// 根據選擇的用戶設置權限標志
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add("select 權限名稱 from 權限清單 where 用戶編號='"
+ Table1->FieldByName("用戶編號")->AsString + "'");
Query1->Open();
while(!Query1->Eof)
{
AnsiString szFunName = Query1->FieldByName("權限名稱")->AsString;
CheckListBox1->Checked[CheckListBox1->Items->IndexOf(szFunName)] = true;
Query1->Next();
}
}
//---------------------------------------------------------------------------
// 選擇或去除功能權限,修改數據庫權限清單表
void __fastcall TfmRightManage::CheckListBox1ClickCheck(TObject *Sender)
{
// 沒有選擇用戶,退出函數
if(!Table1->FieldByName("用戶編號")) return;
// 循環判斷
Query1->Close();
Query1->SQL->Clear();
AnsiString sql;
// 不管沒有選中,先全部刪除,再根據選擇的情況插入
sql = "delete from 權限清單 where 用戶編號='" ;
sql += Table1->FieldByName("用戶編號")->AsString + "'";
Query1->SQL->Add(sql);
for(int i=0; i<CheckListBox1->Items->Count; i++)
{
if(CheckListBox1->Checked[i]) // 選中權限,權限清單中插入一條
{
sql = "insert into 權限清單(用戶編號,權限名稱) values('" ;
sql += Table1->FieldByName("用戶編號")->AsString + "','";
sql += CheckListBox1->Items->Strings[i] + "')";
Query1->SQL->Add(sql);
}
}
Query1->ExecSQL();
Query1->Close();
}
//---------------------------------------------------------------------------
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -